dotty.tools.dotc.ast.Trees

Template

Related Doc: package Trees

case class Template[-T >: Untyped] extends DenotingTree[T] with DefTree[T] with WithLazyField[List[Tree[T]]] with Product with Serializable

extends parents { self => body }

Linear Supertypes
Serializable, Serializable, WithLazyField[List[Tree[T]]], DefTree[T], DenotingTree[T], Tree[T], Cloneable, Cloneable, Showable, Container, LinkSource, Positioned, Product, Equals, DotClass, AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Template
  2. Serializable
  3. Serializable
  4. WithLazyField
  5. DefTree
  6. DenotingTree
  7. Tree
  8. Cloneable
  9. Cloneable
  10. Showable
  11. Container
  12. LinkSource
  13. Positioned
  14. Product
  15. Equals
  16. DotClass
  17. AnyRef
  18. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Type Members

  1. type ThisTree[-T >: Untyped] = Template[T]

    The type constructor at the root of the tree

    The type constructor at the root of the tree

    Definition Classes
    TemplateDefTreeDenotingTreeTree

Value Members

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

    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

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

    Definition Classes
    AnyRef → Any
  4. def addPos(pos: Position): Template.this.type

    This item with a position that's the union of the given pos and the current position.

    This item with a position that's the union of the given pos and the current position.

    Definition Classes
    Positioned
  5. final def allAttachments: List[(Key[_], Any)]

    The list of all keys and values attached to this container.

    The list of all keys and values attached to this container.

    Definition Classes
    LinkSource
  6. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  7. final def attachment[V](key: Key[V]): V

    The attachment corresponding to key.

    The attachment corresponding to key.

    Definition Classes
    LinkSource
    Exceptions thrown

    NoSuchElementException if no attachment with key exists

  8. final def attachmentOrElse[V](key: Key[V], default: V): V

    The attachment corresponding to key, or default if no attachment with key exists.

    The attachment corresponding to key, or default if no attachment with key exists.

    Definition Classes
    LinkSource
  9. def body(implicit ctx: Context): List[Tree[T]]

  10. def checkPos(nonOverlapping: Boolean)(implicit ctx: Context): Unit

    Check that all positioned items in this tree satisfy the following conditions:

    Check that all positioned items in this tree satisfy the following conditions:

    • Parent positions contain child positions
    • If item is a non-empty tree, it has a position
    Definition Classes
    Positioned
  11. def clone(): Tree[T]

    Definition Classes
    Tree → AnyRef
  12. val constr: DefDef[T]

  13. def contains(that: Positioned): Boolean

    Definition Classes
    Positioned
  14. def denot(implicit ctx: Context): Denotation

    The denotation referred tno by this tree.

    The denotation referred tno by this tree. Defined for DenotingTrees and ProxyTrees, NoDenotation for other kinds of trees

    Definition Classes
    DenotingTreeTree
  15. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  16. def equals(that: Any): Boolean

    Definition Classes
    Tree → Equals → AnyRef → Any
  17. def fallbackToText(printer: Printer): Text

    A fallback text representation, if the pattern matching in Printers does not have a case for this showable element

    A fallback text representation, if the pattern matching in Printers does not have a case for this showable element

    Definition Classes
    Showable
  18. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  19. def force(x: AnyRef): Unit

    Attributes
    protected
    Definition Classes
    TemplateWithLazyField
  20. def forceIfLazy(implicit ctx: Context): List[Tree[T]]

    Definition Classes
    WithLazyField
  21. def foreachInThicket(op: (Tree[T]) ⇒ Unit): Unit

    If this is a thicket, perform op on each of its trees otherwise, perform op ion tree itself.

    If this is a thicket, perform op on each of its trees otherwise, perform op ion tree itself.

    Definition Classes
    Tree
  22. final def getAttachment[V](key: Key[V]): Option[V]

    Optionally get attachment corresponding to key

    Optionally get attachment corresponding to key

    Definition Classes
    LinkSource
  23. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  24. final def hasType: Boolean

    Does the tree have its type field set? Note: this operation is not referentially transparent, because it can observe the withType modifications.

    Does the tree have its type field set? Note: this operation is not referentially transparent, because it can observe the withType modifications. Should be used only in special circumstances (we need it for printing trees with optional type info).

    Definition Classes
    Tree
  25. def hashCode(): Int

    Definition Classes
    Tree → AnyRef → Any
  26. def initialPos: Position

    The initial, synthetic position.

    The initial, synthetic position. This is usually the union of all positioned children's positions.

    Definition Classes
    Positioned
  27. def isDef: Boolean

    Does this tree define a new symbol that is not defined elsewhere?

    Does this tree define a new symbol that is not defined elsewhere?

    Definition Classes
    DefTreeTree
  28. def isEmpty: Boolean

    Is this tree either the empty tree or the empty ValDef?

    Is this tree either the empty tree or the empty ValDef?

    Definition Classes
    Tree
  29. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  30. def isPattern: Boolean

    Is this a legal part of a pattern which is not at the same time a term?

    Is this a legal part of a pattern which is not at the same time a term?

    Definition Classes
    Tree
  31. def isTerm: Boolean

    Does this tree represent a term?

    Does this tree represent a term?

    Definition Classes
    Tree
  32. def isType: Boolean

    Does this tree represent a type?

    Does this tree represent a type?

    Definition Classes
    Tree
  33. def namedType: NamedType

    Definition Classes
    DefTree
  34. final def ne(arg0: AnyRef): Boolean

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

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

    Definition Classes
    AnyRef
  37. def orElse[U >: Untyped <: T](that: ⇒ Tree[U]): Tree[U]

    if this tree is the empty tree, the alternative, else this tree

    if this tree is the empty tree, the alternative, else this tree

    Definition Classes
    Tree
  38. val parents: List[Tree[T]]

  39. def pos: Position

    The item's position.

    The item's position.

    Definition Classes
    Positioned
  40. final def pushAttachment[V](key: Key[V], value: V): Unit

    Definition Classes
    Container
  41. final def putAttachment[V](key: Key[V], value: V): Option[V]

    Add attachment with given key and value.

    Add attachment with given key and value.

    returns

    Optionally, the old attachment with given key if one existed before. The new attachment is added at the position of the old one, or at the end if no attachment with same key existed.

    Definition Classes
    LinkSource
  42. final def removeAttachment[V](key: Key[V]): Option[V]

    Remove attachment with given key, if it exists.

    Remove attachment with given key, if it exists.

    returns

    Optionally, the removed attachment with given key if one existed before.

    Definition Classes
    LinkSource
  43. val self: ValDef[T]

  44. def setPos(pos: Position): Unit

    Destructively update curPos to given position.

    Destructively update curPos to given position. Also, set any missing positions in children.

    Attributes
    protected
    Definition Classes
    Positioned
  45. def show(implicit ctx: Context): String

    The string representation of this showable element.

    The string representation of this showable element.

    Definition Classes
    Showable
  46. def showSummary(implicit ctx: Context): String

    Definition Classes
    Showable
  47. def showSummary(depth: Int)(implicit ctx: Context): String

    The summarized string representation of this showable element.

    The summarized string representation of this showable element. Recursion depth is limited to some smallish value. Default is Config.summarizeDepth.

    Definition Classes
    Showable
  48. final def symbol(implicit ctx: Context): Symbol

    Shorthand for denot.symbol.

    Shorthand for denot.symbol.

    Definition Classes
    Tree
  49. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  50. def toList: List[Tree[T]]

    Convert tree to a list.

    Convert tree to a list. Gives a singleton list, except for thickets which return their element trees.

    Definition Classes
    Tree
  51. def toText(printer: Printer): Text

    The text representation of this showable element.

    The text representation of this showable element. This normally dispatches to a pattern matching method in Printers.

    Definition Classes
    TreeShowable
  52. def tpe: T

    The type of the tree.

    The type of the tree. In case of an untyped tree, an UnAssignedTypeException is thrown. (Overridden by empty trees)

    Definition Classes
    Tree
  53. def treeSize: Int

    The number of nodes in this tree

    The number of nodes in this tree

    Definition Classes
    Tree
  54. final def typeOpt: Type

    Definition Classes
    Tree
  55. def unforced: LazyTreeList

    Definition Classes
    TemplateWithLazyField
  56. def unforcedBody: LazyTreeList

  57. def uniqueId: Int

    Definition Classes
    Tree
  58. def unsupported(methodName: String): Nothing

    Throws an UnsupportedOperationException with the given method name.

    Throws an UnsupportedOperationException with the given method name.

    Definition Classes
    DotClass
  59. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  62. def withPos(posd: Positioned): Template.this.type

    Definition Classes
    Positioned
  63. def withPos(pos: Position): Template.this.type

    A positioned item like this one with the position set to pos.

    A positioned item like this one with the position set to pos. if the positioned item is source-derived, a clone is returned. If the positioned item is synthetic, the position is updated destructively and the item itself is returned.

    Definition Classes
    Positioned
  64. def withType(tpe: Type)(implicit ctx: Context): ThisTree[Type]

    Return a typed tree that's isomorphic to this tree, but has given type.

    Return a typed tree that's isomorphic to this tree, but has given type. (Overridden by empty trees)

    Definition Classes
    Tree
  65. def withTypeUnchecked(tpe: Type): ThisTree[Type]

    Definition Classes
    Tree

Inherited from Serializable

Inherited from Serializable

Inherited from WithLazyField[List[Tree[T]]]

Inherited from DefTree[T]

Inherited from DenotingTree[T]

Inherited from Tree[T]

Inherited from Cloneable

Inherited from Cloneable

Inherited from Showable

Inherited from Container

Inherited from LinkSource

Inherited from Positioned

Inherited from Product

Inherited from Equals

Inherited from DotClass

Inherited from AnyRef

Inherited from Any

Ungrouped