Package io.trino.sql.analyzer
Class ExpressionAnalyzer
java.lang.Object
io.trino.sql.analyzer.ExpressionAnalyzer
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final recordstatic final record -
Field Summary
Fields -
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 voidanalyzeExpressionWithoutSubqueries(Session session, PlannerContext plannerContext, AccessControl accessControl, Scope scope, Analysis analysis, Expression expression, ErrorCodeSupplier errorCode, String message, WarningCollector warningCollector, CorrelationSupport correlationSupport) analyzeJsonPathInvocation(JsonTable node, Session session, PlannerContext plannerContext, StatementAnalyzerFactory statementAnalyzerFactory, AccessControl accessControl, Scope scope, Analysis analysis, WarningCollector warningCollector, CorrelationSupport correlationSupport) static TypeanalyzeJsonQueryExpression(QueryColumn column, Session session, PlannerContext plannerContext, StatementAnalyzerFactory statementAnalyzerFactory, AccessControl accessControl, Scope scope, Analysis analysis, WarningCollector warningCollector) analyzeJsonValueExpression(ValueColumn column, JsonPathAnalyzer.JsonPathAnalysis pathAnalysis, Session session, PlannerContext plannerContext, StatementAnalyzerFactory statementAnalyzerFactory, AccessControl accessControl, Scope scope, Analysis analysis, WarningCollector warningCollector, CorrelationSupport correlationSupport) 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 booleanisCharacterStringType(Type type) static booleanisNumericType(Type type) static booleanstatic booleanisStringType(Type type) setExpressionType(Expression expression, Type type)
-
Field Details
-
JSON_NO_PARAMETERS_ROW_TYPE
-
-
Method Details
-
getResolvedFunctions
-
getExpressionTypes
-
setExpressionType
-
getExpressionCoercions
-
getSortKeyCoercionsForFrameBoundCalculation
-
getSortKeyCoercionsForFrameBoundComparison
-
getFrameBoundCalculations
-
getSubqueryInPredicates
-
getPredicateCoercions
-
getColumnReferences
-
getLambdaArgumentReferences
-
analyze
-
analyze
-
getSubqueries
-
getExistsSubqueries
-
getQuantifiedComparisons
-
getWindowFunctions
-
getTableColumnReferences
-
getSourceFields
-
getLabels
-
getRanges
-
getUndefinedLabels
-
getResolvedLabels
-
getSubsetLabels
-
getMeasureDefinitions
-
getPatternRecognitionInputs
public Map<NodeRef<Expression>,List<PatternRecognitionAnalysis.PatternInputAnalysis>> getPatternRecognitionInputs() -
getJsonPathAnalyses
-
getJsonInputFunctions
-
getJsonOutputFunctions
-
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) -
analyzeJsonPathInvocation
public static ExpressionAnalyzer.ParametersTypeAndAnalysis analyzeJsonPathInvocation(JsonTable node, Session session, PlannerContext plannerContext, StatementAnalyzerFactory statementAnalyzerFactory, AccessControl accessControl, Scope scope, Analysis analysis, WarningCollector warningCollector, CorrelationSupport correlationSupport) -
analyzeJsonValueExpression
public static ExpressionAnalyzer.TypeAndAnalysis analyzeJsonValueExpression(ValueColumn column, JsonPathAnalyzer.JsonPathAnalysis pathAnalysis, Session session, PlannerContext plannerContext, StatementAnalyzerFactory statementAnalyzerFactory, AccessControl accessControl, Scope scope, Analysis analysis, WarningCollector warningCollector, CorrelationSupport correlationSupport) -
analyzeJsonQueryExpression
public static Type analyzeJsonQueryExpression(QueryColumn column, Session session, PlannerContext plannerContext, StatementAnalyzerFactory statementAnalyzerFactory, AccessControl accessControl, Scope scope, Analysis analysis, WarningCollector warningCollector) -
analyzeExpressionWithoutSubqueries
public static void analyzeExpressionWithoutSubqueries(Session session, PlannerContext plannerContext, AccessControl accessControl, Scope scope, Analysis analysis, Expression expression, ErrorCodeSupplier errorCode, String message, 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
-
isStringType
-
isCharacterStringType
-