ANY
and ALL
contains their operators
#963
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Changes
Expr::AllOp
andExpr::AnyOp
to contain the operator which precedes them, rather than be contained by them. This fixes an issue I had as a polars user: pola-rs/polars#10081.The rational for this is that despite the order the syntax demands, the conditional operator modifies the behavior of the
ANY
command, and not vice versa. Similar toNOT
as withNOT IN
, the negation modifies the behavior of theIN
, and theIN
is the real operation. In both cases, its more convenient to parse the real operation than the modifier(s).I did not find any uses the the old
ANY
orALL
commands in any of DataFusion, LocustDB, Ballista, GlueSQL or Opteryx. This might still briefly break their builds however.If more unit tests are required, please let me know.
Fixes: #936