-
Notifications
You must be signed in to change notification settings - Fork 3.8k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
63647: opt: use optgen Let expressions r=mgartner a=mgartner #### optfmt: fix Let formatting Previously, `optfmt` could awkwardly format the entire expression on one line except for the closing `)`. For example: (Let ($result $ok):(FoldBinary (OpName) $left $right) $ok ) This commit fixes the formatting so that the closing `)` will not be the only element of the expression placed on a separate line. The example above is now formatted as: (Let ($result $ok):(FoldBinary (OpName) $left $right) $ok ) Release note: None #### opt: replace Succeeded and OrderingSucceeded with Let expression The `Succeeded` and `OrderingSucceeded` custom functions have been removed. Normalization and exploration rules which used these functions now use `Let` expressions instead. Custom functions called in these rules return an additional `ok bool` value which is bound in a `Let` expression and used to determine if the rule matches an expression. Release note: None #### opt: simplify GenerateLocalityOptimizedAntiJoin with Let expression The commit simplifies `GenerateLocalityOptimizedAntiJoin` by using a `Let` expression. The `GetLocalityOptimizedAntiJoinLookupExprs` custom function now returns the local expression, remote expression, and an `ok` boolean, rather than a single `LocalAndRemoteLookupExprs` struct. These values are bound to variables in the rule using a `Let` expression. Release note: None Co-authored-by: Marcus Gartner <[email protected]>
- Loading branch information
Showing
17 changed files
with
221 additions
and
206 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.