@@ -22,7 +22,7 @@ fn reachable_with_var_join(edges: &[(u32, u32)]) -> Relation<(u32, u32)> {
2222
2323 while iteration. changed ( ) {
2424 // reachable(N1, N3) :- edges(N1, N2), reachable(N2, N3).
25- reachable. from_join ( & reachable, & edges_by_successor, |_: ( u32 , ) , n3, n1| ( n1, n3) ) ;
25+ reachable. from_join_first ( & reachable, & edges_by_successor, |_, n3, n1| ( n1, n3) ) ;
2626 }
2727
2828 reachable. complete ( )
@@ -41,7 +41,7 @@ fn reachable_with_relation_join(edges: &[(u32, u32)]) -> Relation<(u32, u32)> {
4141
4242 while iteration. changed ( ) {
4343 // reachable(N1, N3) :- edges(N1, N2), reachable(N2, N3).
44- reachable. from_join ( & reachable, & edges_by_successor, |_: ( u32 , ) , n3, n1| ( n1, n3) ) ;
44+ reachable. from_join_first ( & reachable, & edges_by_successor, |_, n3, n1| ( n1, n3) ) ;
4545 }
4646
4747 reachable. complete ( )
@@ -86,7 +86,7 @@ fn sum_join_via_var(
8686
8787 while iteration. changed ( ) {
8888 // output(K1, V1 * 100 + V2) :- input1(K1, V1), input2(K1, V2).
89- output. from_join ( & input1, & input2, |( k1 , ) , v1, v2| ( k1, v1 * 100 + v2) ) ;
89+ output. from_join_first ( & input1, & input2, |k1 , v1, v2| ( k1, v1 * 100 + v2) ) ;
9090 }
9191
9292 output. complete ( )
@@ -100,7 +100,7 @@ fn sum_join_via_relation(
100100) -> Relation < ( u32 , u32 ) > {
101101 let input1: Relation < ( u32 , u32 ) > = input1_slice. iter ( ) . collect ( ) ;
102102 let input2: Relation < ( u32 , u32 ) > = input2_slice. iter ( ) . collect ( ) ;
103- Relation :: from_join ( & input1, & input2, |( k1 , ) , v1, v2| ( k1, v1 * 100 + v2) )
103+ Relation :: from_join_first ( & input1, & input2, |k1 , v1, v2| ( k1, v1 * 100 + v2) )
104104}
105105
106106proptest ! {
0 commit comments