scala.slick.ast

Node

trait Node extends AnyRef

A node in the query AST.

Every Node has a number of child nodes and an optional type annotation.

Linear Supertypes
AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Node
  2. AnyRef
  3. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Type Members

  1. abstract type Self >: Node.this.type <: Node

Abstract Value Members

  1. abstract def nodeChildren: Seq[Node]

    All child nodes of this node.

    All child nodes of this node. Must be implemented by subclasses.

  2. abstract def nodeRebuild(ch: IndexedSeq[Node]): Self

    Rebuild this node with a new list of children.

    Rebuild this node with a new list of children. Implementations of this method *must not* perform any optimization to reuse the current node. This method always returns a fresh copy.

    Attributes
    protected[this]
  3. abstract def nodeWithComputedType2(scope: SymbolScope = SymbolScope.empty, typeChildren: Boolean = false, retype: Boolean = false): Self

    Attributes
    protected[this]

Concrete 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. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  7. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  8. final def eq(arg0: AnyRef): Boolean

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

    Definition Classes
    AnyRef → Any
  10. def finalize(): Unit

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

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

    Definition Classes
    AnyRef → Any
  13. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  14. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  15. def nodeBuildTypedNode[T >: Node.this.type <: Node](newNode: T, newType: Type): T

  16. def nodeChildNames: Iterable[String]

    Names for the child nodes to show in AST dumps.

    Names for the child nodes to show in AST dumps. Defaults to a numbered sequence starting at 0 but can be overridden by subclasses to produce more suitable names.

  17. def nodeHasType: Boolean

  18. final def nodeIntrinsicSymbol: IntrinsicSymbol

    The intrinsic symbol that points to this Node object.

  19. final def nodeMapChildren(f: (Node) ⇒ Node, keepType: Boolean = false): Self

    Apply a mapping function to all children of this node and recreate the node with the new children.

    Apply a mapping function to all children of this node and recreate the node with the new children. If all new children are identical to the old ones, this node is returned. If keepType is set to true, the type of this node is kept even if the children have changed.

  20. def nodePeekType: Type

  21. final def nodeRebuildOrThis(ch: IndexedSeq[Node]): Self

    Rebuild this node with a new list of children unless all children are identical to the current ones.

    Rebuild this node with a new list of children unless all children are identical to the current ones.

    Attributes
    protected[this]
  22. def nodeRebuildWithType(tpe: Type): Self

  23. def nodeType: Type

    The current type of this node

  24. final def nodeTyped(tpe: Type): Node.this.type

    Return this Node with a Type assigned.

    Return this Node with a Type assigned. This may only be called on freshly constructed nodes with no other existing references, i.e. creating the Node plus assigning it a Type must be atomic.

  25. final def nodeTypedOrCopy(tpe: Type): Self

    Return this Node with a Type assigned (if no other type has been seen for it yet) or a typed copy.

  26. final def nodeUntypedOrCopy: Self

    Return this Node with no Type assigned (if it's type has not been observed yet) or an untyped copy.

  27. final def nodeWithComputedType(scope: SymbolScope = SymbolScope.empty, typeChildren: Boolean = false, retype: Boolean = false): Self

    Rebuild this node and all children with their computed type.

    Rebuild this node and all children with their computed type. If this node already has a type, the children are only type-checked again if typeChildren is set to true. if retype is also set to true, the existing type of this node is replaced. If this node does not yet have a type, the types of all children are computed.

  28. final def notify(): Unit

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

    Definition Classes
    AnyRef
  30. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  31. def toString(): String

    Definition Classes
    Node → AnyRef → Any
  32. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped