From 61d763e590d2b6e60af4be6a3156832d34dab685 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Re=CC=81my=20Rakic?= Date: Sat, 12 Oct 2019 22:04:21 +0200 Subject: [PATCH] micro optimization: regular joins can be used in initialization code instead of leapjoins that's 1% of free benchmark real estate --- polonius-engine/src/output/initialization.rs | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/polonius-engine/src/output/initialization.rs b/polonius-engine/src/output/initialization.rs index 0debfa6b13b..16034edeba6 100644 --- a/polonius-engine/src/output/initialization.rs +++ b/polonius-engine/src/output/initialization.rs @@ -59,10 +59,10 @@ pub(super) fn init_var_maybe_initialized_on_exit( // path_maybe_initialized_on_exit(Mother, point) :- // path_maybe_initialized_on_exit(Daughter, point), // child(Daughter, Mother). - path_maybe_initialized_on_exit.from_leapjoin( + path_maybe_initialized_on_exit.from_join( &path_maybe_initialized_on_exit, - child.extend_with(|&(daughter, _point)| daughter), - |&(_daughter, point), &mother| (mother, point), + &child, + |&_daughter, &point, &mother| (mother, point), ); // TODO: the following lines contain things left to implement for move @@ -92,12 +92,12 @@ pub(super) fn init_var_maybe_initialized_on_exit( // END TODO // var_maybe_initialized_on_exit(var, point) :- - // path_belongs_to_var(path, var), - // path_maybe_initialized_at(path, point). - var_maybe_initialized_on_exit.from_leapjoin( + // path_maybe_initialized_on_exit(path, point), + // path_belongs_to_var(path, var). + var_maybe_initialized_on_exit.from_join( &path_maybe_initialized_on_exit, - path_belongs_to_var.extend_with(|&(path, _point)| path), - |&(_path, point), &var| (var, point), + &path_belongs_to_var, + |&_path, &point, &var| (var, point), ); }