org.apache.spark.sql.catalyst.parser

AstBuilder

class AstBuilder extends SqlBaseBaseVisitor[AnyRef] with Logging

The AstBuilder converts an ANTLR4 ParseTree into a catalyst Expression, LogicalPlan or TableIdentifier.

Linear Supertypes
Logging, SqlBaseBaseVisitor[AnyRef], SqlBaseVisitor[AnyRef], AbstractParseTreeVisitor[AnyRef], ParseTreeVisitor[AnyRef], AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. AstBuilder
  2. Logging
  3. SqlBaseBaseVisitor
  4. SqlBaseVisitor
  5. AbstractParseTreeVisitor
  6. ParseTreeVisitor
  7. AnyRef
  8. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new AstBuilder()

  2. new AstBuilder(conf: SQLConf)

Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. def aggregateResult(arg0: AnyRef, arg1: AnyRef): AnyRef

    Attributes
    protected[org.antlr.v4.runtime.tree]
    Definition Classes
    AbstractParseTreeVisitor
  7. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  8. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  9. def createSchema(ctx: ColTypeListContext): StructType

    Create top level table schema.

    Create top level table schema.

    Attributes
    protected
  10. def createStructType(ctx: ComplexColTypeListContext): StructType

    Create a StructType from a sequence of StructFields.

    Create a StructType from a sequence of StructFields.

    Attributes
    protected
  11. def defaultResult(): AnyRef

    Attributes
    protected[org.antlr.v4.runtime.tree]
    Definition Classes
    AbstractParseTreeVisitor
  12. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  13. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  14. def expression(ctx: ParserRuleContext): Expression

    Create an expression from the given context.

    Create an expression from the given context. This method just passes the context on to the visitor and only takes care of typing (We assume that the visitor returns an Expression here).

    Attributes
    protected
  15. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  16. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  17. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  18. def initializeLogIfNecessary(isInterpreter: Boolean): Unit

    Attributes
    protected
    Definition Classes
    Logging
  19. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  20. def isTraceEnabled(): Boolean

    Attributes
    protected
    Definition Classes
    Logging
  21. def log: Logger

    Attributes
    protected
    Definition Classes
    Logging
  22. def logDebug(msg: ⇒ String, throwable: Throwable): Unit

    Attributes
    protected
    Definition Classes
    Logging
  23. def logDebug(msg: ⇒ String): Unit

    Attributes
    protected
    Definition Classes
    Logging
  24. def logError(msg: ⇒ String, throwable: Throwable): Unit

    Attributes
    protected
    Definition Classes
    Logging
  25. def logError(msg: ⇒ String): Unit

    Attributes
    protected
    Definition Classes
    Logging
  26. def logInfo(msg: ⇒ String, throwable: Throwable): Unit

    Attributes
    protected
    Definition Classes
    Logging
  27. def logInfo(msg: ⇒ String): Unit

    Attributes
    protected
    Definition Classes
    Logging
  28. def logName: String

    Attributes
    protected
    Definition Classes
    Logging
  29. def logTrace(msg: ⇒ String, throwable: Throwable): Unit

    Attributes
    protected
    Definition Classes
    Logging
  30. def logTrace(msg: ⇒ String): Unit

    Attributes
    protected
    Definition Classes
    Logging
  31. def logWarning(msg: ⇒ String, throwable: Throwable): Unit

    Attributes
    protected
    Definition Classes
    Logging
  32. def logWarning(msg: ⇒ String): Unit

    Attributes
    protected
    Definition Classes
    Logging
  33. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  34. final def notify(): Unit

    Definition Classes
    AnyRef
  35. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  36. def plan(tree: ParserRuleContext): LogicalPlan

    Attributes
    protected
  37. def shouldVisitNextChild(arg0: RuleNode, arg1: AnyRef): Boolean

    Attributes
    protected[org.antlr.v4.runtime.tree]
    Definition Classes
    AbstractParseTreeVisitor
  38. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  39. def toString(): String

    Definition Classes
    AnyRef → Any
  40. def typedVisit[T](ctx: ParseTree): T

    Attributes
    protected
  41. def visit(arg0: ParseTree): AnyRef

    Definition Classes
    AbstractParseTreeVisitor → ParseTreeVisitor
  42. def visitAddTableColumns(ctx: AddTableColumnsContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  43. def visitAddTablePartition(ctx: AddTablePartitionContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  44. def visitAggregation(ctx: AggregationContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  45. def visitAliasedQuery(ctx: AliasedQueryContext): LogicalPlan

    Create an alias (SubqueryAlias) for a sub-query.

    Create an alias (SubqueryAlias) for a sub-query. This is practically the same as visitAliasedRelation and visitNamedExpression, ANTLR4 however requires us to use 3 different hooks.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  46. def visitAliasedRelation(ctx: AliasedRelationContext): LogicalPlan

    Create an alias (SubqueryAlias) for a join relation.

    Create an alias (SubqueryAlias) for a join relation. This is practically the same as visitAliasedQuery and visitNamedExpression, ANTLR4 however requires us to use 3 different hooks.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  47. def visitAlterViewQuery(ctx: AlterViewQueryContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  48. def visitAnalyze(ctx: AnalyzeContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  49. def visitArithmeticBinary(ctx: ArithmeticBinaryContext): Expression

    Create a binary arithmetic expression.

    Create a binary arithmetic expression. The following arithmetic operators are supported: - Multiplication: '*' - Division: '/' - Hive Long Division: 'DIV' - Modulo: '%' - Addition: '+' - Subtraction: '-' - Binary AND: '&' - Binary XOR - Binary OR: '|'

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  50. def visitArithmeticOperator(ctx: ArithmeticOperatorContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  51. def visitArithmeticUnary(ctx: ArithmeticUnaryContext): Expression

    Create a unary arithmetic expression.

    Create a unary arithmetic expression. The following arithmetic operators are supported: - Plus: '+' - Minus: '-' - Bitwise Not: '~'

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  52. def visitBigDecimalLiteral(ctx: BigDecimalLiteralContext): Literal

    Create a BigDecimal Literal expression.

    Create a BigDecimal Literal expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  53. def visitBigIntLiteral(ctx: BigIntLiteralContext): Literal

    Create a Long Literal expression.

    Create a Long Literal expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  54. def visitBooleanDefault(ctx: BooleanDefaultContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  55. def visitBooleanLiteral(ctx: BooleanLiteralContext): Literal

    Create a Boolean literal expression.

    Create a Boolean literal expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  56. def visitBooleanValue(ctx: BooleanValueContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  57. def visitBucketSpec(ctx: BucketSpecContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  58. def visitCacheTable(ctx: CacheTableContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  59. def visitCast(ctx: CastContext): Expression

    Create a Cast expression.

    Create a Cast expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  60. def visitChangeColumn(ctx: ChangeColumnContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  61. def visitChildren(node: RuleNode): AnyRef

    Override the default behavior for all visit methods.

    Override the default behavior for all visit methods. This will only return a non-null result when the context has only one child. This is done because there is no generic method to combine the results of the context children. In all other cases null is returned.

    Definition Classes
    AstBuilder → AbstractParseTreeVisitor → ParseTreeVisitor
  62. def visitClearCache(ctx: ClearCacheContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  63. def visitColPosition(ctx: ColPositionContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  64. def visitColType(ctx: ColTypeContext): StructField

    Create a top level StructField from a column definition.

    Create a top level StructField from a column definition.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  65. def visitColTypeList(ctx: ColTypeListContext): Seq[StructField]

    Create a StructType from a number of column definitions.

    Create a StructType from a number of column definitions.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  66. def visitColumnReference(ctx: ColumnReferenceContext): Expression

    Create an UnresolvedAttribute expression.

    Create an UnresolvedAttribute expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  67. def visitComparison(ctx: ComparisonContext): Expression

    Create a comparison expression.

    Create a comparison expression. This compares two expressions. The following comparison operators are supported: - Equal: '=' or '==' - Null-safe Equal: '<=>' - Not Equal: '<>' or '!=' - Less than: '<' - Less then or Equal: '<=' - Greater than: '>' - Greater then or Equal: '>='

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  68. def visitComparisonOperator(ctx: ComparisonOperatorContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  69. def visitComplexColType(ctx: ComplexColTypeContext): StructField

    Create a StructField from a column definition.

    Create a StructField from a column definition.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  70. def visitComplexColTypeList(ctx: ComplexColTypeListContext): Seq[StructField]

    Create a StructType from a number of column definitions.

    Create a StructType from a number of column definitions.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  71. def visitComplexDataType(ctx: ComplexDataTypeContext): DataType

    Create a complex DataType.

    Create a complex DataType. Arrays, Maps and Structures are supported.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  72. def visitConstantDefault(ctx: ConstantDefaultContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  73. def visitConstantList(ctx: ConstantListContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  74. def visitCreateDatabase(ctx: CreateDatabaseContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  75. def visitCreateFileFormat(ctx: CreateFileFormatContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  76. def visitCreateFunction(ctx: CreateFunctionContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  77. def visitCreateHiveTable(ctx: CreateHiveTableContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  78. def visitCreateTable(ctx: CreateTableContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  79. def visitCreateTableHeader(ctx: CreateTableHeaderContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  80. def visitCreateTableLike(ctx: CreateTableLikeContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  81. def visitCreateTempViewUsing(ctx: CreateTempViewUsingContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  82. def visitCreateView(ctx: CreateViewContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  83. def visitCtes(ctx: CtesContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  84. def visitDecimalLiteral(ctx: DecimalLiteralContext): Literal

    Create a decimal literal for a regular decimal number.

    Create a decimal literal for a regular decimal number.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  85. def visitDereference(ctx: DereferenceContext): Expression

    Create a dereference expression.

    Create a dereference expression. The return type depends on the type of the parent, this can either be a UnresolvedAttribute (if the parent is an UnresolvedAttribute), or an UnresolvedExtractValue if the parent is some expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  86. def visitDescribeColName(ctx: DescribeColNameContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  87. def visitDescribeDatabase(ctx: DescribeDatabaseContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  88. def visitDescribeFuncName(ctx: DescribeFuncNameContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  89. def visitDescribeFunction(ctx: DescribeFunctionContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  90. def visitDescribeTable(ctx: DescribeTableContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  91. def visitDoubleLiteral(ctx: DoubleLiteralContext): Literal

    Create a Double Literal expression.

    Create a Double Literal expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  92. def visitDropDatabase(ctx: DropDatabaseContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  93. def visitDropFunction(ctx: DropFunctionContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  94. def visitDropTable(ctx: DropTableContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  95. def visitDropTablePartitions(ctx: DropTablePartitionsContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  96. def visitErrorNode(arg0: ErrorNode): AnyRef

    Definition Classes
    AbstractParseTreeVisitor → ParseTreeVisitor
  97. def visitExists(ctx: ExistsContext): Expression

    Create a filtering correlated sub-query (EXISTS).

    Create a filtering correlated sub-query (EXISTS).

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  98. def visitExplain(ctx: ExplainContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  99. def visitExpression(ctx: ExpressionContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  100. def visitFailNativeCommand(ctx: FailNativeCommandContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  101. def visitFirst(ctx: FirstContext): Expression

    Create a First expression.

    Create a First expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  102. def visitFrameBound(ctx: FrameBoundContext): FrameBoundary

    Create or resolve a FrameBoundary.

    Create or resolve a FrameBoundary. Simple math expressions are allowed for Value Preceding/Following boundaries. These expressions must be constant (foldable) and return an integer value.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  103. def visitFromClause(ctx: FromClauseContext): LogicalPlan

    Create a logical plan for a given 'FROM' clause.

    Create a logical plan for a given 'FROM' clause. Note that we support multiple (comma separated) relations here, these get converted into a single plan by condition-less inner join.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  104. def visitFunctionCall(ctx: FunctionCallContext): Expression

    Create a (windowed) Function expression.

    Create a (windowed) Function expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  105. def visitFunctionIdentifier(ctx: FunctionIdentifierContext): FunctionIdentifier

    Create a FunctionIdentifier from a 'functionName' or 'databaseName'.

    Create a FunctionIdentifier from a 'functionName' or 'databaseName'.'functionName' pattern.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  106. def visitFunctionName(ctx: QualifiedNameContext): FunctionIdentifier

    Create a function database (optional) and name pair.

    Create a function database (optional) and name pair.

    Attributes
    protected
  107. def visitGenericFileFormat(ctx: GenericFileFormatContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  108. def visitGroupingSet(ctx: GroupingSetContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  109. def visitHint(ctx: HintContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  110. def visitHintStatement(ctx: HintStatementContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  111. def visitIdentifier(ctx: IdentifierContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  112. def visitIdentifierComment(ctx: IdentifierCommentContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  113. def visitIdentifierCommentList(ctx: IdentifierCommentListContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  114. def visitIdentifierList(ctx: IdentifierListContext): Seq[String]

    Create a Sequence of Strings for a parenthesis enclosed alias list.

    Create a Sequence of Strings for a parenthesis enclosed alias list.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  115. def visitIdentifierSeq(ctx: IdentifierSeqContext): Seq[String]

    Create a Sequence of Strings for an identifier list.

    Create a Sequence of Strings for an identifier list.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  116. def visitInlineTable(ctx: InlineTableContext): LogicalPlan

    Create an inline table (a virtual table in Hive parlance).

    Create an inline table (a virtual table in Hive parlance).

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  117. def visitInlineTableDefault1(ctx: InlineTableDefault1Context): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  118. def visitInlineTableDefault2(ctx: InlineTableDefault2Context): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  119. def visitInsertInto(ctx: InsertIntoContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  120. def visitIntegerLiteral(ctx: IntegerLiteralContext): Literal

    Create an integral literal expression.

    Create an integral literal expression. The code selects the most narrow integral type possible, either a BigDecimal, a Long or an Integer is returned.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  121. def visitInterval(ctx: IntervalContext): Literal

    Create a CalendarInterval literal expression.

    Create a CalendarInterval literal expression. An interval expression can contain multiple unit value pairs, for instance: interval 2 months 2 days.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  122. def visitIntervalField(ctx: IntervalFieldContext): CalendarInterval

    Create a CalendarInterval for a unit value pair.

    Create a CalendarInterval for a unit value pair. Two unit configuration types are supported: - Single unit. - From-To unit (only 'YEAR TO MONTH' and 'DAY TO SECOND' are supported).

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  123. def visitIntervalLiteral(ctx: IntervalLiteralContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  124. def visitIntervalValue(ctx: IntervalValueContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  125. def visitJoinCriteria(ctx: JoinCriteriaContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  126. def visitJoinRelation(ctx: JoinRelationContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  127. def visitJoinType(ctx: JoinTypeContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  128. def visitLast(ctx: LastContext): Expression

    Create a Last expression.

    Create a Last expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  129. def visitLateralView(ctx: LateralViewContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  130. def visitLoadData(ctx: LoadDataContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  131. def visitLocationSpec(ctx: LocationSpecContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  132. def visitLogicalBinary(ctx: LogicalBinaryContext): Expression

    Combine a number of boolean expressions into a balanced expression tree.

    Combine a number of boolean expressions into a balanced expression tree. These expressions are either combined by a logical And or a logical Or.

    A balanced binary tree is created because regular left recursive trees cause considerable performance degradations and can cause stack overflows.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  133. def visitLogicalNot(ctx: LogicalNotContext): Expression

    Invert a boolean expression.

    Invert a boolean expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  134. def visitManageResource(ctx: ManageResourceContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  135. def visitMultiInsertQuery(ctx: MultiInsertQueryContext): LogicalPlan

    Create a logical plan which allows for multiple inserts using one 'from' statement.

    Create a logical plan which allows for multiple inserts using one 'from' statement. These queries have the following SQL form:

    [WITH cte...]?
    FROM src
    [INSERT INTO tbl1 SELECT *]+

    For example:

    FROM db.tbl1 A
    INSERT INTO dbo.tbl1 SELECT * WHERE A.value = 10 LIMIT 5
    INSERT INTO dbo.tbl2 SELECT * WHERE A.value = 12

    This (Hive) feature cannot be combined with set-operators.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  136. def visitMultiInsertQueryBody(ctx: MultiInsertQueryBodyContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  137. def visitNamedExpression(ctx: NamedExpressionContext): Expression

    Create an aliased expression if an alias is specified.

    Create an aliased expression if an alias is specified. Both single and multi-aliases are supported.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  138. def visitNamedExpressionSeq(ctx: NamedExpressionSeqContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  139. def visitNamedQuery(ctx: NamedQueryContext): SubqueryAlias

    Create a named logical plan.

    Create a named logical plan.

    This is only used for Common Table Expressions.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  140. def visitNamedWindow(ctx: NamedWindowContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  141. def visitNestedConstantList(ctx: NestedConstantListContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  142. def visitNonOptionalPartitionSpec(ctx: PartitionSpecContext): Map[String, String]

    Create a partition specification map without optional values.

    Create a partition specification map without optional values.

    Attributes
    protected
  143. def visitNonReserved(ctx: NonReservedContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  144. def visitNullLiteral(ctx: NullLiteralContext): Literal

    Create a NULL literal expression.

    Create a NULL literal expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  145. def visitNumericLiteral(ctx: NumericLiteralContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  146. def visitOrderedIdentifier(ctx: OrderedIdentifierContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  147. def visitOrderedIdentifierList(ctx: OrderedIdentifierListContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  148. def visitParenthesizedExpression(ctx: ParenthesizedExpressionContext): Expression

    Create an expression for an expression between parentheses.

    Create an expression for an expression between parentheses. This is need because the ANTLR visitor cannot automatically convert the nested context into an expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  149. def visitPartitionSpec(ctx: PartitionSpecContext): Map[String, Option[String]]

    Create a partition specification map.

    Create a partition specification map.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  150. def visitPartitionSpecLocation(ctx: PartitionSpecLocationContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  151. def visitPartitionVal(ctx: PartitionValContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  152. def visitPredicate(ctx: PredicateContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  153. def visitPredicateOperator(ctx: PredicateOperatorContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  154. def visitPredicated(ctx: PredicatedContext): Expression

    Create a predicated expression.

    Create a predicated expression. A predicated expression is a normal expression with a predicate attached to it, for example:

    a + 1 IS NULL
    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  155. def visitPrimitiveDataType(ctx: PrimitiveDataTypeContext): DataType

    Resolve/create a primitive type.

    Resolve/create a primitive type.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  156. def visitQualifiedName(ctx: QualifiedNameContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  157. def visitQuery(ctx: QueryContext): LogicalPlan

    Create a top-level plan with Common Table Expressions.

    Create a top-level plan with Common Table Expressions.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  158. def visitQueryOrganization(ctx: QueryOrganizationContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  159. def visitQueryPrimaryDefault(ctx: QueryPrimaryDefaultContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  160. def visitQuerySpecification(ctx: QuerySpecificationContext): LogicalPlan

    Create a logical plan using a query specification.

    Create a logical plan using a query specification.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  161. def visitQueryTermDefault(ctx: QueryTermDefaultContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  162. def visitQuotedIdentifier(ctx: QuotedIdentifierContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  163. def visitQuotedIdentifierAlternative(ctx: QuotedIdentifierAlternativeContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  164. def visitRecoverPartitions(ctx: RecoverPartitionsContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  165. def visitRefreshResource(ctx: RefreshResourceContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  166. def visitRefreshTable(ctx: RefreshTableContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  167. def visitRelation(ctx: RelationContext): LogicalPlan

    Create a single relation referenced in a FROM clause.

    Create a single relation referenced in a FROM clause. This method is used when a part of the join condition is nested, for example:

    select * from t1 join (t2 cross join t3) on col1 = col2
    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  168. def visitRenameTable(ctx: RenameTableContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  169. def visitRenameTablePartition(ctx: RenameTablePartitionContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  170. def visitRepairTable(ctx: RepairTableContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  171. def visitResetConfiguration(ctx: ResetConfigurationContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  172. def visitResource(ctx: ResourceContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  173. def visitRowConstructor(ctx: RowConstructorContext): Expression

    Create a CreateStruct expression.

    Create a CreateStruct expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  174. def visitRowFormatDelimited(ctx: RowFormatDelimitedContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  175. def visitRowFormatSerde(ctx: RowFormatSerdeContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  176. def visitSample(ctx: SampleContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  177. def visitSearchedCase(ctx: SearchedCaseContext): Expression

    Create a condition based CaseWhen expression.

    Create a condition based CaseWhen expression. This has the following SQL syntax:

    CASE
     WHEN [predicate] THEN [expression]
     ...
     ELSE [expression]
    END
    ctx

    the parse tree

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  178. def visitSetConfiguration(ctx: SetConfigurationContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  179. def visitSetDatabaseProperties(ctx: SetDatabasePropertiesContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  180. def visitSetOperation(ctx: SetOperationContext): LogicalPlan

    Connect two queries by a Set operator.

    Connect two queries by a Set operator.

    Supported Set operators are: - UNION [DISTINCT] - UNION ALL - EXCEPT [DISTINCT] - MINUS [DISTINCT] - INTERSECT [DISTINCT]

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  181. def visitSetQuantifier(ctx: SetQuantifierContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  182. def visitSetTableLocation(ctx: SetTableLocationContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  183. def visitSetTableProperties(ctx: SetTablePropertiesContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  184. def visitSetTableSerDe(ctx: SetTableSerDeContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  185. def visitShowColumns(ctx: ShowColumnsContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  186. def visitShowCreateTable(ctx: ShowCreateTableContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  187. def visitShowDatabases(ctx: ShowDatabasesContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  188. def visitShowFunctions(ctx: ShowFunctionsContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  189. def visitShowPartitions(ctx: ShowPartitionsContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  190. def visitShowTable(ctx: ShowTableContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  191. def visitShowTables(ctx: ShowTablesContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  192. def visitShowTblProperties(ctx: ShowTblPropertiesContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  193. def visitSimpleCase(ctx: SimpleCaseContext): Expression

    Create a value based CaseWhen expression.

    Create a value based CaseWhen expression. This has the following SQL form:

    CASE [expression]
     WHEN [value] THEN [expression]
     ...
     ELSE [expression]
    END
    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  194. def visitSingleDataType(ctx: SingleDataTypeContext): DataType

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  195. def visitSingleExpression(ctx: SingleExpressionContext): Expression

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  196. def visitSingleFunctionIdentifier(ctx: SingleFunctionIdentifierContext): FunctionIdentifier

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  197. def visitSingleInsertQuery(ctx: SingleInsertQueryContext): LogicalPlan

    Create a logical plan for a regular (single-insert) query.

    Create a logical plan for a regular (single-insert) query.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  198. def visitSingleStatement(ctx: SingleStatementContext): LogicalPlan

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  199. def visitSingleTableIdentifier(ctx: SingleTableIdentifierContext): TableIdentifier

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  200. def visitSkewSpec(ctx: SkewSpecContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  201. def visitSmallIntLiteral(ctx: SmallIntLiteralContext): Literal

    Create a Short Literal expression.

    Create a Short Literal expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  202. def visitSortItem(ctx: SortItemContext): SortOrder

    Create a SortOrder expression.

    Create a SortOrder expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  203. def visitStar(ctx: StarContext): Expression

    Create a star (i.

    Create a star (i.e. all) expression; this selects all elements (in the specified object). Both un-targeted (global) and targeted aliases are supported.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  204. def visitStatementDefault(ctx: StatementDefaultContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  205. def visitStorageHandler(ctx: StorageHandlerContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  206. def visitStringConstant(ctx: ConstantContext): String

    Convert a constant of any type into a string.

    Convert a constant of any type into a string. This is typically used in DDL commands, and its main purpose is to prevent slight differences due to back to back conversions i.e.: String -> Literal -> String.

    Attributes
    protected
  207. def visitStringLiteral(ctx: StringLiteralContext): Literal

    Create a String literal expression.

    Create a String literal expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  208. def visitStruct(ctx: StructContext): Expression

    Create a CreateStruct expression.

    Create a CreateStruct expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  209. def visitSubquery(ctx: SubqueryContext): LogicalPlan

    Create a logical plan for a sub-query.

    Create a logical plan for a sub-query.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  210. def visitSubqueryExpression(ctx: SubqueryExpressionContext): Expression

    Create a ScalarSubquery expression.

    Create a ScalarSubquery expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  211. def visitSubscript(ctx: SubscriptContext): Expression

    Create an UnresolvedExtractValue expression, this is used for subscript access to an array.

    Create an UnresolvedExtractValue expression, this is used for subscript access to an array.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  212. def visitTable(ctx: TableContext): LogicalPlan

    Create an un-aliased table reference.

    Create an un-aliased table reference. This is typically used for top-level table references, for example:

    INSERT INTO db.tbl2
    TABLE db.tbl1
    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  213. def visitTableFileFormat(ctx: TableFileFormatContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  214. def visitTableIdentifier(ctx: TableIdentifierContext): TableIdentifier

    Create a TableIdentifier from a 'tableName' or 'databaseName'.

    Create a TableIdentifier from a 'tableName' or 'databaseName'.'tableName' pattern.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  215. def visitTableName(ctx: TableNameContext): LogicalPlan

    Create an aliased table reference.

    Create an aliased table reference. This is typically used in FROM clauses.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  216. def visitTableProperty(ctx: TablePropertyContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  217. def visitTablePropertyKey(ctx: TablePropertyKeyContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  218. def visitTablePropertyList(ctx: TablePropertyListContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  219. def visitTablePropertyValue(ctx: TablePropertyValueContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  220. def visitTableProvider(ctx: TableProviderContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  221. def visitTableValuedFunction(ctx: TableValuedFunctionContext): LogicalPlan

    Create a table-valued function call with arguments, e.

    Create a table-valued function call with arguments, e.g. range(1000)

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  222. def visitTerminal(arg0: TerminalNode): AnyRef

    Definition Classes
    AbstractParseTreeVisitor → ParseTreeVisitor
  223. def visitTimeFunctionCall(ctx: TimeFunctionCallContext): Expression

    Create a current timestamp/date expression.

    Create a current timestamp/date expression. These are different from regular function because they do not require the user to specify braces when calling them.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  224. def visitTinyIntLiteral(ctx: TinyIntLiteralContext): Literal

    Create a Byte Literal expression.

    Create a Byte Literal expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  225. def visitTruncateTable(ctx: TruncateTableContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  226. def visitTypeConstructor(ctx: TypeConstructorContext): Literal

    Create a typed Literal expression.

    Create a typed Literal expression. A typed literal has the following SQL syntax:

    [TYPE] '[VALUE]'

    Currently Date, Timestamp and Binary typed literals are supported.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  227. def visitUncacheTable(ctx: UncacheTableContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  228. def visitUnquotedIdentifier(ctx: UnquotedIdentifierContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  229. def visitUnsetTableProperties(ctx: UnsetTablePropertiesContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  230. def visitUnsupportedHiveNativeCommands(ctx: UnsupportedHiveNativeCommandsContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  231. def visitUse(ctx: UseContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  232. def visitValueExpressionDefault(ctx: ValueExpressionDefaultContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  233. def visitWhenClause(ctx: WhenClauseContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  234. def visitWindowDef(ctx: WindowDefContext): WindowSpecDefinition

    Create a window definition, i.

    Create a window definition, i.e. WindowSpecDefinition.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  235. def visitWindowFrame(ctx: WindowFrameContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  236. def visitWindowRef(ctx: WindowRefContext): WindowSpecReference

    Create a reference to a window frame, i.

    Create a reference to a window frame, i.e. WindowSpecReference.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  237. def visitWindows(ctx: WindowsContext): AnyRef

    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  238. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  239. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  240. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  241. def withRepartitionByExpression(ctx: QueryOrganizationContext, expressions: Seq[Expression], query: LogicalPlan): LogicalPlan

    Create a clause for DISTRIBUTE BY.

    Create a clause for DISTRIBUTE BY.

    Attributes
    protected
  242. def withScriptIOSchema(ctx: QuerySpecificationContext, inRowFormat: RowFormatContext, recordWriter: Token, outRowFormat: RowFormatContext, recordReader: Token, schemaLess: Boolean): ScriptInputOutputSchema

    Create a (Hive based) ScriptInputOutputSchema.

    Create a (Hive based) ScriptInputOutputSchema.

    Attributes
    protected

Inherited from Logging

Inherited from SqlBaseBaseVisitor[AnyRef]

Inherited from SqlBaseVisitor[AnyRef]

Inherited from AbstractParseTreeVisitor[AnyRef]

Inherited from ParseTreeVisitor[AnyRef]

Inherited from AnyRef

Inherited from Any

Ungrouped