@@ -6,21 +6,22 @@ mutable struct JoinNode <: TabularNode
66 left:: Bool
77 right:: Bool
88 optional:: Bool
9+ swap:: Bool
910
10- JoinNode (; joinee, on, left = false , right = false , optional = false ) =
11- new (joinee, on, left, right, optional)
11+ JoinNode (; joinee, on, left = false , right = false , optional = false , swap = false ) =
12+ new (joinee, on, left, right, optional, swap )
1213end
1314
14- JoinNode (joinee; on, left = false , right = false , optional = false ) =
15- JoinNode (; joinee, on, left, right, optional)
15+ JoinNode (joinee; on, left = false , right = false , optional = false , swap = false ) =
16+ JoinNode (; joinee, on, left, right, optional, swap )
1617
17- JoinNode (joinee, on; left = false , right = false , optional = false ) =
18- JoinNode (; joinee, on, left, right, optional)
18+ JoinNode (joinee, on; left = false , right = false , optional = false , swap = false ) =
19+ JoinNode (; joinee, on, left, right, optional, swap )
1920
2021"""
21- Join(; joinee, on, left = false, right = false, optional = false)
22- Join(joinee; on, left = false, right = false, optional = false)
23- Join(joinee, on; left = false, right = false, optional = false)
22+ Join(; joinee, on, left = false, right = false, optional = false, swap = false )
23+ Join(joinee; on, left = false, right = false, optional = false, swap = false )
24+ Join(joinee, on; left = false, right = false, optional = false, swap = false )
2425
2526`Join` correlates two input datasets.
2627
@@ -102,8 +103,14 @@ function PrettyPrinting.quoteof(n::JoinNode, ctx::QuoteContext)
102103 if n. optional
103104 push! (ex. args, Expr (:kw , :optional , n. optional))
104105 end
106+ if n. swap
107+ push! (ex. args, Expr (:kw , :swap , n. swap))
108+ end
105109 else
106110 push! (ex. args, :… )
107111 end
108112 ex
109113end
114+
115+ label (n:: JoinNode ) =
116+ n. swap ? label (n. joinee) : label (n. over)
0 commit comments