Class

treehugger.api.Trees

AppliedTypeTree

Related Doc: package Trees

Permalink

case class AppliedTypeTree(tpt: Universe.Tree, args: List[Universe.Tree]) extends Universe.Tree with Universe.TypTree with Product with Serializable

Applied type <tpt> [ <args> ], eliminated by RefCheck

Linear Supertypes
Serializable, Serializable, Universe.TypTree, Universe.Tree, Product, Equals, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. AppliedTypeTree
  2. Serializable
  3. Serializable
  4. TypTree
  5. Tree
  6. Product
  7. Equals
  8. AnyRef
  9. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new AppliedTypeTree(tpt: Universe.Tree, args: List[Universe.Tree])

    Permalink

Value Members

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

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  4. val args: List[Universe.Tree]

    Permalink
  5. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  6. def children: List[Universe.Tree]

    Permalink

    The direct child trees of this tree.

    The direct child trees of this tree. EmptyTrees are always omitted. Lists are flattened.

    Definition Classes
    Tree
  7. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  8. def defineType(tp: Universe.Type): AppliedTypeTree.this.type

    Permalink

    Like setType, but if this is a previously empty TypeTree that fact is remembered so that resetAllAttrs will snap back.

    Like setType, but if this is a previously empty TypeTree that fact is remembered so that resetAllAttrs will snap back.

    Attempting to elaborate on the above, I find: If defineType is called on a TypeTree whose type field is null or NoType, this is recorded as "wasEmpty = true". That value is used in ResetAttrsTraverser, which nulls out the type field of TypeTrees for which wasEmpty is true, leaving the others alone.

    resetAllAttrs is used in situations where some speculative typing of a tree takes place, fails, and the tree needs to be returned to its former state to try again. So according to me: using defineType instead of setType is how you communicate that the type being set does not depend on any previous state, and therefore should be abandoned if the current line of type inquiry doesn't work out.

    Definition Classes
    Tree
  9. final def eq(arg0: AnyRef): Boolean

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

    Permalink
    Definition Classes
    Tree → Equals → AnyRef → Any
  11. def equalsStructure(that: Universe.Tree): Boolean

    Permalink
    Definition Classes
    Tree
  12. def equalsStructure0(that: Universe.Tree)(f: (Universe.Tree, Universe.Tree) ⇒ Boolean): Boolean

    Permalink
    Definition Classes
    Tree
  13. def exists(p: (Universe.Tree) ⇒ Boolean): Boolean

    Permalink

    Is there part of this tree which satisfies predicate p?

    Is there part of this tree which satisfies predicate p?

    Definition Classes
    Tree
  14. def filter(f: (Universe.Tree) ⇒ Boolean): List[Universe.Tree]

    Permalink

    Find all subtrees matching predicate p

    Find all subtrees matching predicate p

    Definition Classes
    Tree
  15. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  16. def find(p: (Universe.Tree) ⇒ Boolean): Option[Universe.Tree]

    Permalink

    Returns optionally first tree (in a preorder traversal) which satisfies predicate p, or None if none exists.

    Returns optionally first tree (in a preorder traversal) which satisfies predicate p, or None if none exists.

    Definition Classes
    Tree
  17. def foreach(f: (Universe.Tree) ⇒ Unit): Unit

    Permalink

    Apply f to each subtree

    Apply f to each subtree

    Definition Classes
    Tree
  18. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  19. def hasSymbol: Boolean

    Permalink
    Definition Classes
    Tree
  20. def hasSymbolWhich(f: (Universe.Symbol) ⇒ Boolean): Boolean

    Permalink
    Definition Classes
    Tree
  21. def hashCode(): Int

    Permalink
    Definition Classes
    Tree → AnyRef → Any
  22. val id: Int

    Permalink
    Definition Classes
    Tree
  23. def isDef: Boolean

    Permalink
    Definition Classes
    Tree
  24. def isEmpty: Boolean

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

    Permalink
    Definition Classes
    Any
  26. def isTerm: Boolean

    Permalink

    The canonical way to test if a Tree represents a term.

    The canonical way to test if a Tree represents a term.

    Definition Classes
    Tree
  27. def isType: Boolean

    Permalink

    The canonical way to test if a Tree represents a type.

    The canonical way to test if a Tree represents a type.

    Definition Classes
    Tree
  28. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  29. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  30. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  31. def pos: Position

    Permalink
    Definition Classes
    Tree
  32. def pos_=(pos: Position): Unit

    Permalink
    Definition Classes
    Tree
  33. def setPos(pos: Position): AppliedTypeTree.this.type

    Permalink
    Definition Classes
    Tree
  34. def setSymbol(sym: Universe.Symbol): AppliedTypeTree.this.type

    Permalink
    Definition Classes
    Tree
  35. def setType(tp: Universe.Type): AppliedTypeTree.this.type

    Permalink

    Set tpe to give tp and return this.

    Set tpe to give tp and return this.

    Definition Classes
    Tree
  36. def symbol: Universe.Symbol

    Permalink

    Note that symbol is fixed as null at this level.

    Note that symbol is fixed as null at this level. In SymTrees, it is overridden and implemented with a var, initialized to NoSymbol.

    Trees which are not SymTrees but which carry symbols do so by overriding def symbol to forward it elsewhere. Examples:

    Super(qual, _) // has qual's symbol Apply(fun, args) // has fun's symbol TypeApply(fun, args) // has fun's symbol AppliedTypeTree(tpt, args) // has tpt's symbol TypeTree(tpe) // has tpe's typeSymbol, if tpe != null

    Attempting to set the symbol of a Tree which does not support it will induce an exception.

    Definition Classes
    AppliedTypeTreeTree
  37. def symbol_=(sym: Universe.Symbol): Unit

    Permalink
    Definition Classes
    AppliedTypeTreeTree
  38. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  39. def tpe: Universe.Type

    Permalink
    Definition Classes
    Tree
  40. def tpe_=(t: Universe.Type): Unit

    Permalink
    Definition Classes
    Tree
  41. val tpt: Universe.Tree

    Permalink
  42. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Serializable

Inherited from Serializable

Inherited from Universe.TypTree

Inherited from Universe.Tree

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Ungrouped