#pragma once #include #include #include #include #include namespace DB { /** Build query tree from AST. * AST that represent query ASTSelectWithUnionQuery, ASTSelectIntersectExceptQuery, ASTSelectQuery. * AST that represent a list of expressions ASTExpressionList. * AST that represent expression ASTIdentifier, ASTAsterisk, ASTLiteral, ASTFunction. * * For QUERY and UNION nodes contexts are created with respect to specified SETTINGS. */ QueryTreeNodePtr buildQueryTree(ASTPtr query, ContextPtr context); }