package ast

Type Members

  1. trait BaseColumnAttributeAssignment extends AnyRef
  2. class BetweenExpression extends TernaryOperatorNode with LogicalBoolean
  3. class BinaryOperatorNode extends ExpressionNode
  4. class BinaryOperatorNodeLogicalBoolean extends BinaryOperatorNode with LogicalBoolean
  5. class ColumnAttributeAssignment extends BaseColumnAttributeAssignment
  6. class ColumnGroupAttributeAssignment extends BaseColumnAttributeAssignment
  7. class CompositeKeyAttributeAssignment extends ColumnGroupAttributeAssignment
  8. class ConstantExpressionNode [T] extends ExpressionNode
  9. class ConstantExpressionNodeList [T] extends ExpressionNode
  10. class DefaultValueAssignment extends BaseColumnAttributeAssignment
  11. class DummyExpressionHolder extends ExpressionNode

    Update, delete and insert statement are not built with AST nodes, (for example Table[].update), although some portions of these statements (where clauses are sometimes built with it.

    Update, delete and insert statement are not built with AST nodes, (for example Table[].update), although some portions of these statements (where clauses are sometimes built with it. The StatisticsListener needs to view every expression call as an AST, which is the reason for this class. AST are meant to be "non rendered", i.e. agnostic to specific DatabaseAdapter, this DummyExpressionHolder is an exception. TODO: unify expression building to be completely AST based.

  12. class EqualityExpression extends BinaryOperatorNodeLogicalBoolean
  13. class ExclusionOperator extends BinaryOperatorNodeLogicalBoolean
  14. class ExistsExpression extends PrefixOperatorNode with LogicalBoolean
  15. class ExportedSelectElement extends SelectElement

    SelectElement that refer to a SelectElement of an inner or outer query

  16. trait ExpressionNode extends AnyRef
  17. class FieldSelectElement extends SelectElement with UniqueIdInAliaseRequired
  18. class FullOuterJoinNode extends BinaryOperatorNode
  19. class FunctionNode [A] extends ExpressionNode
  20. class InclusionOperator extends BinaryOperatorNodeLogicalBoolean
  21. class InputOnlyConstantExpressionNode [T] extends ConstantExpressionNode[T] with TypedExpressionNode[T]
  22. class LeftOuterJoinNode extends BinaryOperatorNode
  23. trait ListExpressionNode extends ExpressionNode
  24. trait LogicalBoolean extends ExpressionNode
  25. class OrderByArg extends AnyRef
  26. class OrderByExpression extends ExpressionNode
  27. class OuterJoinExpression extends AnyRef
  28. class PostfixOperatorNode extends ExpressionNode
  29. class PrefixOperatorNode extends ExpressionNode
  30. trait QueryExpressionElements extends ExpressionNode
  31. class QueryExpressionNode [R] extends QueryExpressionElements with QueryableExpressionNode
  32. trait QueryableExpressionNode extends ExpressionNode with UniqueIdInAliaseRequired
  33. class RightHandSideOfIn [A] extends ExpressionNode
  34. trait SelectElement extends ExpressionNode

    SelectElement are elements of a select list, for example they are a,b, and c in :

    SelectElement are elements of a select list, for example they are a,b, and c in :

    select a,b,c from T

    they are either ValueSelectElement for composite expressions, i.e. select (x / 2) * y as Z from .... TupleSelectElement for group by or compute elements (TODO: document group by/compute) FieldSelectElement for table columns (that map to fields)

    ExportSelectElement for a select element that refers to a SelectElement of an inner or outer query.

    SelectElementReference are nodes in any clause other than select (where, having, composite expression, order by, etc) that refer to a SelectElement

  35. class SelectElementReference [A] extends TypedExpressionNode[A]

    All nodes that refer to a SelectElement are SelectElementReference, with the exception of SelectElement that refer to an inner or outer query's SelectElement, these are ExportedSelectElement

  36. class TernaryOperatorNode extends FunctionNode[Nothing] with LogicalBoolean
  37. class TokenExpressionNode extends ExpressionNode
  38. class TupleSelectElement extends SelectElement
  39. class TypeConversion extends ExpressionNode
  40. trait TypedExpressionNode [T] extends ExpressionNode
  41. trait UniqueIdInAliaseRequired extends AnyRef
  42. class UpdateAssignment extends AnyRef
  43. class UpdateStatement extends ExpressionNode
  44. class ValueSelectElement extends SelectElement with UniqueIdInAliaseRequired
  45. class ViewExpressionNode [U] extends QueryableExpressionNode

Ungrouped