NewAST creates an AST from the current expression using the tracked source info which is modified and managed by the OptimizerContext.
(expr ast.Expr)
| 271 | // NewAST creates an AST from the current expression using the tracked source info which |
| 272 | // is modified and managed by the OptimizerContext. |
| 273 | func (opt *optimizerExprFactory) NewAST(expr ast.Expr) *ast.AST { |
| 274 | return ast.NewAST(expr, opt.sourceInfo) |
| 275 | } |
| 276 | |
| 277 | // CopyAST creates a renumbered copy of `Expr` and `SourceInfo` values of the input AST, where the |
| 278 | // renumbering uses the same scheme as the core optimizer logic ensuring there are no collisions |