scala.reflect.runtime.JavaUniverse

# treeInfo

###
Related Doc: package JavaUniverse

#### object treeInfo extends TreeInfo

Definition Classes
  JavaUniverse → SymbolTable
Source
  JavaUniverse.scala

Linear Supertypes
TreeInfo, AnyRef, Any
Ordering

1. Alphabetic
2. By Inheritance

Inherited

1. treeInfo
2. TreeInfo
3. AnyRef
4. Any

1. Hide All
2. Show All

Visibility

1. Public
2. All

### Type Members

1. #### class Applied extends AnyRef

   Applications in Scala can have one of the following shapes:

   Applications in Scala can have one of the following shapes:

   1) naked core: Ident(_) or Select(_, _) or basically anything else 2) naked core with targs: TypeApply(core, targs) or AppliedTypeTree(core, targs) 3) apply or several applies wrapping a core: Apply(core, _), or Apply(Apply(core, _), _), etc

   This class provides different ways to decompose applications and simplifies their analysis.

   ***Examples*** (TypeApply in the examples can be replaced with AppliedTypeTree)

   Ident(foo): * callee = Ident(foo) * core = Ident(foo) * targs = Nil * argss = Nil

   TypeApply(foo, List(targ1, targ2...)) * callee = TypeApply(foo, List(targ1, targ2...)) * core = foo * targs = List(targ1, targ2...) * argss = Nil

   Apply(foo, List(arg1, arg2...)) * callee = foo * core = foo * targs = Nil * argss = List(List(arg1, arg2...))

   Apply(Apply(foo, List(arg21, arg22, ...)), List(arg11, arg12...)) * callee = foo * core = foo * targs = Nil * argss = List(List(arg11, arg12...), List(arg21, arg22, ...))

   Apply(Apply(TypeApply(foo, List(targs1, targs2, ...)), List(arg21, arg22, ...)), List(arg11, arg12...)) * callee = TypeApply(foo, List(targs1, targs2, ...)) * core = foo * targs = Nil * argss = List(List(arg11, arg12...), List(arg21, arg22, ...))

   Definition Classes
     TreeInfo

2. #### class DynamicApplicationExtractor extends AnyRef

   Definition Classes
     TreeInfo

3. #### abstract class SeeThroughBlocks[T] extends AnyRef

   Some handy extractors for spotting trees through the the haze of irrelevant braces: i.e.

   Some handy extractors for spotting trees through the the haze of irrelevant braces: i.e. Block(Nil, SomeTree) should not keep us from seeing SomeTree.

   Definition Classes
     TreeInfo

### Value Members

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

   Test two objects for inequality.

   Test two objects for inequality.

   returns

     `true` if !(this == that), false otherwise.

   Definition Classes
     AnyRef → Any

2. #### final def ##(): Int

   Equivalent to `x.hashCode` except for boxed numeric types and `null`.

   Equivalent to `x.hashCode` except for boxed numeric types and `null`. For numerics, it returns a hash value which is consistent with value equality: if two value type instances compare as true, then ## will produce the same hash value for each of them. For `null` returns a hashcode where `null.hashCode` throws a `NullPointerException`.

   returns

     a hash value consistent with ==

   Definition Classes
     AnyRef → Any

3. #### final def ==(arg0: Any): Boolean

   The expression `x == that` is equivalent to `if (x eq null) that eq null else x.equals(that)`.

   The expression `x == that` is equivalent to `if (x eq null) that eq null else x.equals(that)`.

   returns

     `true` if the receiver object is equivalent to the argument; `false` otherwise.

   Definition Classes
     AnyRef → Any

4. #### object Applied

   Destructures applications into important subparts described in `Applied` class, namely into: core, targs and argss (in the specified order).

   Destructures applications into important subparts described in `Applied` class, namely into: core, targs and argss (in the specified order).

   Trees which are not applications are also accepted. Their callee and core will be equal to the input, while targs and argss will be Nil.

   The provided extractors don't expose all the API of the `Applied` class. For advanced use, call `dissectApplied` explicitly and use its methods instead of pattern matching.

   Definition Classes
     TreeInfo

5. #### object DynamicApplication extends DynamicApplicationExtractor

   Definition Classes
     TreeInfo

6. #### object DynamicApplicationNamed extends DynamicApplicationExtractor

   Definition Classes
     TreeInfo

7. #### object DynamicUpdate extends DynamicApplicationExtractor

   Definition Classes
     TreeInfo

8. #### object IsFalse extends SeeThroughBlocks[Boolean]

   Definition Classes
     TreeInfo

9. #### object IsTrue extends SeeThroughBlocks[Boolean]

   Definition Classes
     TreeInfo

10. #### object MacroImplReference

    Definition Classes
      TreeInfo

11. #### final val SYNTH_CASE_FLAGS: Int

    Definition Classes
      TreeInfo

12. #### object StripCast

    Definition Classes
      TreeInfo

13. #### object Unapplied

    Locates the synthetic Apply node corresponding to an extractor's call to unapply (unwrapping nested Applies) and returns the fun part of that Apply.

    Locates the synthetic Apply node corresponding to an extractor's call to unapply (unwrapping nested Applies) and returns the fun part of that Apply.

    Definition Classes
      TreeInfo

14. #### object WildcardStarArg

    Definition Classes
      TreeInfo

15. #### def admitsTypeSelection(tree: JavaUniverse.Tree): Boolean

    Is `tree` either a non-volatile type, or a path that does not include any of:

    Is `tree` either a non-volatile type, or a path that does not include any of:

    - a reference to a mutable variable/field
    - a reference to a by-name parameter
    - a member selection on a volatile type (Spec: 3.6 Volatile Types)?

    Such a tree is a suitable target for type selection.

    Definition Classes
      TreeInfo

16. #### final def asInstanceOf[T0]: T0

    Cast the receiver object to be of type `T0`.

    Cast the receiver object to be of type `T0`.

    Note that the success of a cast at runtime is modulo Scala's erasure semantics. Therefore the expression `1.asInstanceOf[String]` will throw a `ClassCastException` at runtime, while the expression `List(1).asInstanceOf[List[String]]` will not. In the latter example, because the type argument is erased as part of compilation it is not possible to check whether the contents of the list are of the requested type.

    returns

      the receiver object.

    Definition Classes
      Any
    Exceptions thrown

      `ClassCastException` if the receiver object is not an instance of the erasure of type `T0`.

17. #### def assignmentToMaybeNamedArg(tree: JavaUniverse.Tree): JavaUniverse.Tree

    Translates an Assign(_, _) node to AssignOrNamedArg(_, _) if the lhs is a simple ident.

    Translates an Assign(_, _) node to AssignOrNamedArg(_, _) if the lhs is a simple ident. Otherwise returns unchanged.

    Definition Classes
      TreeInfo

18. #### def catchesThrowable(cdef: JavaUniverse.CaseDef): Boolean

    Does this CaseDef catch Throwable?

    Does this CaseDef catch Throwable?

    Definition Classes
      TreeInfo

19. #### def clone(): AnyRef

    Create a copy of the receiver object.

    Create a copy of the receiver object.

    The default implementation of the `clone` method is platform dependent.

    returns

      a copy of the receiver object.

    Attributes
      protected[java.lang]
    Definition Classes
      AnyRef
    Annotations
      @IntrinsicCandidate() @throws( ... )
    Note

      not specified by SLS as a member of AnyRef

20. #### def dissectApplied(tree: JavaUniverse.Tree): Applied

    Returns a wrapper that knows how to destructure and analyze applications.

    Returns a wrapper that knows how to destructure and analyze applications.

    Definition Classes
      TreeInfo

21. #### def effectivePatternArity(args: List[JavaUniverse.Tree]): Int

        //------------------------ => effectivePatternArity(args)
        case Extractor(a)          => 1
        case Extractor(a, b)       => 2
        case Extractor((a, b))     => 2
        case Extractor(a @ (b, c)) => 2

    Definition Classes
      TreeInfo

22. #### final def eq(arg0: AnyRef): Boolean

    Tests whether the argument (`that`) is a reference to the receiver object (`this`).

    Tests whether the argument (`that`) is a reference to the receiver object (`this`).

    The `eq` method implements an equivalence relation on non-null instances of `AnyRef`, and has three additional properties:

    - It is consistent: for any non-null instances `x` and `y` of type `AnyRef`, multiple invocations of `x.eq(y)` consistently returns `true` or consistently returns `false`.
    - For any non-null instance `x` of type `AnyRef`, `x.eq(null)` and `null.eq(x)` returns `false`.
    - `null.eq(null)` returns `true`.

    When overriding the `equals` or `hashCode` methods, it is important to ensure that their behavior is consistent with reference equality. Therefore, if two objects are references to each other (`o1 eq o2`), they should be equal to each other (`o1 == o2`) and they should hash to the same value (`o1.hashCode == o2.hashCode`).

    returns

      `true` if the argument is a reference to the receiver object; `false` otherwise.

    Definition Classes
      AnyRef

23. #### def equals(arg0: Any): Boolean

    The equality method for reference types.

    The equality method for reference types. Default implementation delegates to `eq`.

    See also `equals` in scala.Any.

    returns

      `true` if the receiver object is equivalent to the argument; `false` otherwise.

    Definition Classes
      AnyRef → Any

24. #### def firstConstructor(stats: List[JavaUniverse.Tree]): JavaUniverse.Tree

    The first constructor definitions in `stats`

    The first constructor definitions in `stats`

    Definition Classes
      TreeInfo

25. #### def firstConstructorArgs(stats: List[JavaUniverse.Tree]): List[JavaUniverse.Tree]

    The arguments to the first constructor in `stats`.

    The arguments to the first constructor in `stats`.

    Definition Classes
      TreeInfo

26. #### def firstDefinesClassOrObject(trees: List[JavaUniverse.Tree], name: JavaUniverse.Name): Boolean

    Does list of trees start with a definition of a class of module with given name (ignoring imports)

    Does list of trees start with a definition of a class of module with given name (ignoring imports)

    Definition Classes
      TreeInfo

27. #### def flattenedPatternArgs(args: List[JavaUniverse.Tree]): List[JavaUniverse.Tree]

    Definition Classes
      TreeInfo

28. #### def foreachMethodParamAndArg(params: List[JavaUniverse.Symbol], args: List[JavaUniverse.Tree])(f: (JavaUniverse.Symbol, JavaUniverse.Tree) ⇒ Unit): Boolean

    Definition Classes
      TreeInfo

29. #### final def getClass(): Class[_]

    A representation that corresponds to the dynamic class of the receiver object.

    A representation that corresponds to the dynamic class of the receiver object.

    The nature of the representation is platform dependent.

    returns

      a representation that corresponds to the dynamic class of the receiver object.

    Definition Classes
      AnyRef → Any
    Annotations
      @IntrinsicCandidate()
    Note

      not specified by SLS as a member of AnyRef

30. #### val global: JavaUniverse.this.type

    Definition Classes
      treeInfo → TreeInfo

31. #### def hasSynthCaseSymbol(t: JavaUniverse.Tree): Boolean

    Definition Classes
      TreeInfo

32. #### def hasUntypedPreSuperFields(stats: List[JavaUniverse.Tree]): Boolean

    Definition Classes
      TreeInfo

33. #### def hasVolatileType(tree: JavaUniverse.Tree): Boolean

    Is `tree`'s type volatile? (Ignored if its symbol has the @uncheckedStable annotation.)

    Is `tree`'s type volatile? (Ignored if its symbol has the @uncheckedStable annotation.)

    Definition Classes
      TreeInfo

34. #### def hashCode(): Int

    The hashCode method for reference types.

    The hashCode method for reference types. See hashCode in scala.Any.

    returns

      the hash code value for this object.

    Definition Classes
      AnyRef → Any
    Annotations
      @IntrinsicCandidate()

35. #### def isAbsTypeDef(tree: JavaUniverse.Tree): Boolean

    Definition Classes
      TreeInfo

36. #### def isAliasTypeDef(tree: JavaUniverse.Tree): Boolean

    Definition Classes
      TreeInfo

37. #### def isApplyDynamicName(name: JavaUniverse.Name): Boolean

    Definition Classes
      TreeInfo

38. #### def isByNameParamType(tpt: JavaUniverse.Tree): Boolean

    Is tpt a by-name parameter type of the form => T?

    Is tpt a by-name parameter type of the form => T?

    Definition Classes
      TreeInfo

39. #### def isCatchCase(cdef: JavaUniverse.CaseDef): Boolean

    Is this pattern node a catch-all or type-test pattern?

    Is this pattern node a catch-all or type-test pattern?

    Definition Classes
      TreeInfo

40. #### def isConstructorWithDefault(t: JavaUniverse.Tree): Boolean

    Definition Classes
      TreeInfo

41. #### def isDeclarationOrTypeDef(tree: JavaUniverse.Tree): Boolean

    Is tree a declaration or type definition?

    Is tree a declaration or type definition?

    Definition Classes
      TreeInfo

42. #### def isDefaultCase(cdef: JavaUniverse.CaseDef): Boolean

    Is this pattern node a catch-all (wildcard or variable) pattern?

    Is this pattern node a catch-all (wildcard or variable) pattern?

    Definition Classes
      TreeInfo

43. #### def isDefaultGetter(tree: JavaUniverse.Tree): Boolean

    Definition Classes
      TreeInfo

44. #### def isEarlyDef(tree: JavaUniverse.Tree): Boolean

    Definition Classes
      TreeInfo

45. #### def isEarlyValDef(tree: JavaUniverse.Tree): Boolean

    Definition Classes
      TreeInfo

46. #### def isExprSafeToInline(tree: JavaUniverse.Tree): Boolean

    Is tree an expression which can be inlined without affecting program semantics?

    Is tree an expression which can be inlined without affecting program semantics?

    Note that this is not called "isExprPure" since purity (lack of side-effects) is not the litmus test. References to modules and lazy vals are side-effecting, both because side-effecting code may be executed and because the first reference takes a different code path than all to follow; but they are safe to inline because the expression result from evaluating them is always the same.

    Definition Classes
      TreeInfo

47. #### def isGuardedCase(cdef: JavaUniverse.CaseDef): Boolean

    Is this case guarded?

    Is this case guarded?

    Definition Classes
      TreeInfo

48. #### final def isInstanceOf[T0]: Boolean

    Test whether the dynamic type of the receiver object is `T0`.

    Test whether the dynamic type of the receiver object is `T0`.

    Note that the result of the test is modulo Scala's erasure semantics. Therefore the expression `1.isInstanceOf[String]` will return `false`, while the expression `List(1).isInstanceOf[List[String]]` will return `true`. In the latter example, because the type argument is erased as part of compilation it is not possible to check whether the contents of the list are of the specified type.

    returns

      `true` if the receiver object is an instance of erasure of type `T0`; `false` otherwise.

    Definition Classes
      Any

49. #### def isInterfaceMember(tree: JavaUniverse.Tree): Boolean

    Is tree legal as a member definition of an interface?

    Is tree legal as a member definition of an interface?

    Definition Classes
      TreeInfo

50. #### def isLeftAssoc(operator: JavaUniverse.Name): Boolean

    Is name a left-associative operator?

    Is name a left-associative operator?

    Definition Classes
      TreeInfo

51. #### def isMacroApplication(tree: JavaUniverse.Tree): Boolean

    Definition Classes
      TreeInfo

52. #### def isMacroApplicationOrBlock(tree: JavaUniverse.Tree): Boolean

    Definition Classes
      TreeInfo

53. #### def isNullaryInvocation(tree: JavaUniverse.Tree): Boolean

    Definition Classes
      TreeInfo

54. #### def isPath(tree: JavaUniverse.Tree, allowVolatile: Boolean): Boolean

    Is `tree` a path, defined as follows? (Spec: 3.1 Paths)

    Is `tree` a path, defined as follows? (Spec: 3.1 Paths)

    - The empty path ε (which cannot be written explicitly in user programs). - C.this, where C references a class. - p.x where p is a path and x is a stable member of p. - C.super.x or C.super[M].x where C references a class and x references a stable member of the super class or designated parent class M of C.

    NOTE: Trees with errors are (mostly) excluded.

    Path ::= StableId | [id ‘.’] this

    Definition Classes
      TreeInfo

55. #### def isPureDef(tree: JavaUniverse.Tree): Boolean

    Is tree a pure (i.e.

    Is tree a pure (i.e. non-side-effecting) definition?

    Definition Classes
      TreeInfo

56. #### def isPureExprForWarningPurposes(tree: JavaUniverse.Tree): Boolean

    As if the name of the method didn't give it away, this logic is designed around issuing helpful warnings and minimizing spurious ones.

    As if the name of the method didn't give it away, this logic is designed around issuing helpful warnings and minimizing spurious ones. That means don't reuse it for important matters like inlining decisions.

    Definition Classes
      TreeInfo

57. #### def isQualifierSafeToElide(tree: JavaUniverse.Tree): Boolean

    Definition Classes
      TreeInfo

58. #### def isRepeatedParamType(tpt: JavaUniverse.Tree): Boolean

    Is tpt a vararg type of the form T* ?

    Is tpt a vararg type of the form T* ?

    Definition Classes
      TreeInfo

59. #### def isSelfConstrCall(tree: JavaUniverse.Tree): Boolean

    Is tree a self constructor call this(...)? I.e.

    Is tree a self constructor call this(...)? I.e. a call to a constructor of the same object?

    Definition Classes
      TreeInfo

60. #### def isSelfOrSuperConstrCall(tree: JavaUniverse.Tree): Boolean

    Is tree a self or super constructor call?

    Is tree a self or super constructor call?

    Definition Classes
      TreeInfo

61. #### def isSequenceValued(tree: JavaUniverse.Tree): Boolean

    Is this pattern node a sequence-valued pattern?

    Is this pattern node a sequence-valued pattern?

    Definition Classes
      TreeInfo

62. #### def isStableIdentifier(tree: JavaUniverse.Tree, allowVolatile: Boolean): Boolean

    Is `tree` a stable identifier, a path which ends in an identifier?

    Is `tree` a stable identifier, a path which ends in an identifier?

    StableId ::= id | Path ‘.’ id | [id ’.’] ‘super’ [‘[’ id ‘]’] ‘.’ id

    Definition Classes
      TreeInfo

63. #### def isStableIdentifierPattern(tree: JavaUniverse.Tree): Boolean

    Is `tree` admissible as a stable identifier pattern (8.1.5 Stable Identifier Patterns)?

    Is `tree` admissible as a stable identifier pattern (8.1.5 Stable Identifier Patterns)?

    We disregard volatility, as it's irrelevant in patterns (SI-6815)

    Definition Classes
      TreeInfo

64. #### def isStableMemberOf(sym: JavaUniverse.Symbol, tree: JavaUniverse.Tree, allowVolatile: Boolean): Boolean

    Assuming `sym` is a member of `tree`, is it a "stable member"?

    Assuming `sym` is a member of `tree`, is it a "stable member"?

    Stable members are packages or members introduced by object definitions or by value definitions of non-volatile types (§3.6).

    Definition Classes
      TreeInfo

65. #### def isStar(x: JavaUniverse.Tree): Boolean

    Is this tree a Star(_) after removing bindings?

    Is this tree a Star(_) after removing bindings?

    Definition Classes
      TreeInfo

66. #### def isSuperConstrCall(tree: JavaUniverse.Tree): Boolean

    Is tree a super constructor call?

    Is tree a super constructor call?

    Definition Classes
      TreeInfo

67. #### def isSwitchAnnotation(tpe: JavaUniverse.Type): Boolean

    a Match(Typed(_, tpt), _) must be translated into a switch if isSwitchAnnotation(tpt.tpe)

    a Match(Typed(_, tpt), _) must be translated into a switch if isSwitchAnnotation(tpt.tpe)

    Definition Classes
      TreeInfo

68. #### def isSynthCaseSymbol(sym: JavaUniverse.Symbol): Boolean

    Definition Classes
      TreeInfo

69. #### def isSyntheticCase(cdef: JavaUniverse.CaseDef): Boolean

    Is this CaseDef synthetically generated, e.g.

    Is this CaseDef synthetically generated, e.g. by `MatchTranslation.translateTry`?

    Definition Classes
      TreeInfo

70. #### def isSyntheticDefaultCase(cdef: JavaUniverse.CaseDef): Boolean

    Is this pattern node a synthetic catch-all case, added during PartialFunction synthesis before we know whether the user provided cases are exhaustive.

    Is this pattern node a synthetic catch-all case, added during PartialFunction synthesis before we know whether the user provided cases are exhaustive.

    Definition Classes
      TreeInfo

71. #### def isTraitRef(tree: JavaUniverse.Tree): Boolean

    Definition Classes
      TreeInfo

72. #### def isVarPattern(pat: JavaUniverse.Tree): Boolean

    Is tree a variable pattern?

    Is tree a variable pattern?

    Definition Classes
      TreeInfo

73. #### def isVarPatternDeep(tree: JavaUniverse.Tree): Boolean

    Does this tree represent an irrefutable pattern match in the position `for { <tree> <- expr }` based only on information at the `parser` phase? To qualify, there may be no subtree that will be interpreted as a Stable Identifier Pattern, nor any type tests, even on TupleN.

    Does this tree represent an irrefutable pattern match in the position `for { <tree> <- expr }` based only on information at the `parser` phase? To qualify, there may be no subtree that will be interpreted as a Stable Identifier Pattern, nor any type tests, even on TupleN. See SI-6968.

    For instance:

        (foo @ (bar @ _)) = 0

    is a not a variable pattern; if only binds names.

    The following are not variable patterns.

        `bar`
        Bar
        (a, b)
        _: T

    If the pattern is a simple identifier, it is always a variable pattern. For example, the following introduce new bindings:

        for { X <- xs } yield X
        for { `backquoted` <- xs } yield `backquoted`

    Note that this differs from a case clause:

        object X
        scrut match {
           case X =>  // case _ if scrut == X
        }

    Background: https://groups.google.com/d/msg/scala-internals/qwa_XOw_7Ks/IktkeTBYqg0J

    Definition Classes
      TreeInfo

74. #### def isVariableOrGetter(tree: JavaUniverse.Tree): Boolean

    Is tree a mutable variable, or the getter of a mutable field?

    Is tree a mutable variable, or the getter of a mutable field?

    Definition Classes
      TreeInfo

75. #### def isWildcardArg(tree: JavaUniverse.Tree): Boolean

    Is the argument a wildcard argument of the form `_` or `x @ _`?

    Is the argument a wildcard argument of the form `_` or `x @ _`?

    Definition Classes
      TreeInfo

76. #### def isWildcardStarArg(tree: JavaUniverse.Tree): Boolean

    Is this argument node of the form <expr> : _* ?

    Is this argument node of the form <expr> : _* ?

    Definition Classes
      TreeInfo

77. #### def isWildcardStarArgList(trees: List[JavaUniverse.Tree]): Boolean

    Does this argument list end with an argument of the form <expr> : _* ?

    Does this argument list end with an argument of the form <expr> : _* ?

    Definition Classes
      TreeInfo

78. #### def isWildcardStarType(tree: JavaUniverse.Tree): Boolean

    Is the argument a wildcard star type of the form `_*`?

    Is the argument a wildcard star type of the form `_*`?

    Definition Classes
      TreeInfo

79. #### def mapMethodParamsAndArgs[R](params: List[JavaUniverse.Symbol], args: List[JavaUniverse.Tree])(f: (JavaUniverse.Symbol, JavaUniverse.Tree) ⇒ R): List[R]

    Definition Classes
      TreeInfo

80. #### def mayBeTypePat(tree: JavaUniverse.Tree): Boolean

    can this type be a type pattern

    can this type be a type pattern

    Definition Classes
      TreeInfo

81. #### def mayBeVarGetter(sym: JavaUniverse.Symbol): Boolean

    Is symbol potentially a getter of a variable?

    Is symbol potentially a getter of a variable?

    Definition Classes
      TreeInfo

82. #### final def ne(arg0: AnyRef): Boolean

    Equivalent to `!(this eq that)`.

    Equivalent to `!(this eq that)`.

    returns

      `true` if the argument is not a reference to the receiver object; `false` otherwise.

    Definition Classes
      AnyRef

83. #### def noPredefImportForUnit(body: JavaUniverse.Tree): Boolean

    Is this file the body of a compilation unit which should not have Predef imported?

    Is this file the body of a compilation unit which should not have Predef imported?

    Definition Classes
      TreeInfo

84. #### final def notify(): Unit

    Wakes up a single thread that is waiting on the receiver object's monitor.

    Wakes up a single thread that is waiting on the receiver object's monitor.

    Definition Classes
      AnyRef
    Annotations
      @IntrinsicCandidate()
    Note

      not specified by SLS as a member of AnyRef

85. #### final def notifyAll(): Unit

    Wakes up all threads that are waiting on the receiver object's monitor.

    Wakes up all threads that are waiting on the receiver object's monitor.

    Definition Classes
      AnyRef
    Annotations
      @IntrinsicCandidate()
    Note

      not specified by SLS as a member of AnyRef

86. #### def preSuperFields(stats: List[JavaUniverse.Tree]): List[JavaUniverse.ValDef]

    The value definitions marked PRESUPER in this statement sequence

    The value definitions marked PRESUPER in this statement sequence

    Definition Classes
      TreeInfo

87. #### def stripCast(tree: JavaUniverse.Tree): JavaUniverse.Tree

    Strips layers of `.asInstanceOf[T]` / `_.$asInstanceOf[T]()` from an expression

    Strips layers of `.asInstanceOf[T]` / `_.$asInstanceOf[T]()` from an expression

    Definition Classes
      TreeInfo

88. #### def stripNamedApplyBlock(tree: JavaUniverse.Tree): JavaUniverse.Tree

    Named arguments can transform a constructor call into a block, e.g.

    Named arguments can transform a constructor call into a block, e.g. <init>(b = foo, a = bar) is transformed to { val x$1 = foo val x$2 = bar <init>(x$2, x$1) }

    Definition Classes
      TreeInfo

89. #### final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
      AnyRef

90. #### def toString(): String

    Creates a String representation of this object.

    Creates a String representation of this object. The default representation is platform dependent. On the java platform it is the concatenation of the class name, "@", and the object's hashcode in hexadecimal.

    returns

      a String representation of the object.

    Definition Classes
      AnyRef → Any

91. #### def typeParameters(tree: JavaUniverse.Tree): List[JavaUniverse.TypeDef]

    If this tree has type parameters, those.

    If this tree has type parameters, those. Otherwise Nil.

    Definition Classes
      TreeInfo

92. #### def unbind(x: JavaUniverse.Tree): JavaUniverse.Tree

    The underlying pattern ignoring any bindings

    The underlying pattern ignoring any bindings

    Definition Classes
      TreeInfo

93. #### final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
      AnyRef
    Annotations
      @throws( ... )

94. #### final def wait(arg0: Long): Unit

    Definition Classes
      AnyRef
    Annotations
      @throws( ... )

95. #### final def wait(): Unit

    Definition Classes
      AnyRef
    Annotations
      @throws( ... )

### Deprecated Value Members

1. #### def finalize(): Unit

   Called by the garbage collector on the receiver object when there are no more references to the object.

   Called by the garbage collector on the receiver object when there are no more references to the object.

   The details of when and if the `finalize` method is invoked, as well as the interaction between `finalize` and non-local returns and exceptions, are all platform dependent.

   Attributes
     protected[java.lang]
   Definition Classes
     AnyRef
   Annotations
     @Deprecated @deprecated @throws( classOf[java.lang.Throwable] )
   Deprecated

     (Since version ) see corresponding Javadoc for more information.

   Note

     not specified by SLS as a member of AnyRef

### Inherited from TreeInfo

### Inherited from AnyRef

### Inherited from Any

### Ungrouped