Package io.trino.sql.analyzer
Class ExpressionAnalyzer
java.lang.Object
io.trino.sql.analyzer.ExpressionAnalyzer
-
Nested Class Summary
Nested Classes -
Method Summary
Modifier and TypeMethodDescriptionanalyze(Expression expression, Scope scope) analyze(Expression expression, Scope scope, CorrelationSupport correlationSupport) static ExpressionAnalysisanalyzeExpression(Session session, PlannerContext plannerContext, StatementAnalyzerFactory statementAnalyzerFactory, AccessControl accessControl, Scope scope, Analysis analysis, Expression expression, WarningCollector warningCollector, CorrelationSupport correlationSupport) static ExpressionAnalysisanalyzeExpressions(Session session, PlannerContext plannerContext, StatementAnalyzerFactory statementAnalyzerFactory, AccessControl accessControl, TypeProvider types, Iterable<Expression> expressions, Map<NodeRef<Parameter>, Expression> parameters, WarningCollector warningCollector, QueryType queryType) static ExpressionAnalysisanalyzePatternRecognitionExpression(Session session, PlannerContext plannerContext, StatementAnalyzerFactory statementAnalyzerFactory, AccessControl accessControl, Scope scope, Analysis analysis, Expression expression, WarningCollector warningCollector, Set<String> labels) static ExpressionAnalysisanalyzeWindow(Session session, PlannerContext plannerContext, StatementAnalyzerFactory statementAnalyzerFactory, AccessControl accessControl, Scope scope, Analysis analysis, WarningCollector warningCollector, CorrelationSupport correlationSupport, Analysis.ResolvedWindow window, Node originalNode) static ExpressionAnalyzercreateConstantAnalyzer(PlannerContext plannerContext, AccessControl accessControl, Session session, Map<NodeRef<Parameter>, Expression> parameters, WarningCollector warningCollector) static ExpressionAnalyzercreateConstantAnalyzer(PlannerContext plannerContext, AccessControl accessControl, Session session, Map<NodeRef<Parameter>, Expression> parameters, WarningCollector warningCollector, boolean isDescribe) static ExpressionAnalyzercreateWithoutSubqueries(PlannerContext plannerContext, AccessControl accessControl, Session session, TypeProvider symbolTypes, Map<NodeRef<Parameter>, Expression> parameters, Function<? super Node, ? extends RuntimeException> statementAnalyzerRejection, WarningCollector warningCollector, boolean isDescribe) static ExpressionAnalyzercreateWithoutSubqueries(PlannerContext plannerContext, AccessControl accessControl, Session session, Map<NodeRef<Parameter>, Expression> parameters, ErrorCodeSupplier errorCode, String message, WarningCollector warningCollector, boolean isDescribe) com.google.common.collect.Multimap<QualifiedObjectName,String> static booleanisNumericType(Type type) static booleansetExpressionType(Expression expression, Type type)
-
Method Details
-
getResolvedFunctions
-
getExpressionTypes
-
setExpressionType
-
getExpressionCoercions
-
getTypeOnlyCoercions
-
getSortKeyCoercionsForFrameBoundCalculation
-
getSortKeyCoercionsForFrameBoundComparison
-
getFrameBoundCalculations
-
getSubqueryInPredicates
-
getPredicateCoercions
-
getColumnReferences
-
getLambdaArgumentReferences
-
analyze
-
analyze
-
getSubqueries
-
getExistsSubqueries
-
getQuantifiedComparisons
-
getWindowFunctions
-
getTableColumnReferences
-
getReferencedFields
-
getSourceFields
-
getLabelDereferences
public Map<NodeRef<DereferenceExpression>,ExpressionAnalyzer.LabelPrefixedReference> getLabelDereferences() -
getPatternRecognitionFunctions
-
getRanges
-
getUndefinedLabels
-
getMeasureDefinitions
-
getPatternAggregations
-
isPatternRecognitionFunction
-
analyzePatternRecognitionExpression
public static ExpressionAnalysis analyzePatternRecognitionExpression(Session session, PlannerContext plannerContext, StatementAnalyzerFactory statementAnalyzerFactory, AccessControl accessControl, Scope scope, Analysis analysis, Expression expression, WarningCollector warningCollector, Set<String> labels) -
analyzeExpressions
public static ExpressionAnalysis analyzeExpressions(Session session, PlannerContext plannerContext, StatementAnalyzerFactory statementAnalyzerFactory, AccessControl accessControl, TypeProvider types, Iterable<Expression> expressions, Map<NodeRef<Parameter>, Expression> parameters, WarningCollector warningCollector, QueryType queryType) -
analyzeExpression
public static ExpressionAnalysis analyzeExpression(Session session, PlannerContext plannerContext, StatementAnalyzerFactory statementAnalyzerFactory, AccessControl accessControl, Scope scope, Analysis analysis, Expression expression, WarningCollector warningCollector, CorrelationSupport correlationSupport) -
analyzeWindow
public static ExpressionAnalysis analyzeWindow(Session session, PlannerContext plannerContext, StatementAnalyzerFactory statementAnalyzerFactory, AccessControl accessControl, Scope scope, Analysis analysis, WarningCollector warningCollector, CorrelationSupport correlationSupport, Analysis.ResolvedWindow window, Node originalNode) -
createConstantAnalyzer
public static ExpressionAnalyzer createConstantAnalyzer(PlannerContext plannerContext, AccessControl accessControl, Session session, Map<NodeRef<Parameter>, Expression> parameters, WarningCollector warningCollector) -
createConstantAnalyzer
public static ExpressionAnalyzer createConstantAnalyzer(PlannerContext plannerContext, AccessControl accessControl, Session session, Map<NodeRef<Parameter>, Expression> parameters, WarningCollector warningCollector, boolean isDescribe) -
createWithoutSubqueries
public static ExpressionAnalyzer createWithoutSubqueries(PlannerContext plannerContext, AccessControl accessControl, Session session, Map<NodeRef<Parameter>, Expression> parameters, ErrorCodeSupplier errorCode, String message, WarningCollector warningCollector, boolean isDescribe) -
createWithoutSubqueries
public static ExpressionAnalyzer createWithoutSubqueries(PlannerContext plannerContext, AccessControl accessControl, Session session, TypeProvider symbolTypes, Map<NodeRef<Parameter>, Expression> parameters, Function<? super Node, ? extends RuntimeException> statementAnalyzerRejection, WarningCollector warningCollector, boolean isDescribe) -
isNumericType
-