scala.tools.refactoring.analysis.ScopeAnalysis

ScopeTree

sealed trait ScopeTree extends AnyRef

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

Abstract Value Members

  1. abstract def copy(outerScope: Option[ScopeTree] = outerScope, knownSymbols: List[nsc.Global.Symbol] = knownSymbols): ScopeTree

  2. abstract val enclosing: nsc.Global.Tree

    A tree that fully encloses this scope.

  3. abstract def introducedInThisScope(s: nsc.Global.Symbol): Boolean

    Is s visible in this scope, but not in outerScope?

  4. abstract val knownSymbols: List[nsc.Global.Symbol]

    Symbols from which we know that they are visible in this scope.

  5. abstract val outerScope: Option[ScopeTree]

    A scope that contains this scope in the "physical" structure.

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. def findScopeFor(pos: nsc.Global.Position): ScopeTree

    Traverses the scope tree from inner to outer and returns the innermost scope, that is visible from pos.

  12. def findScopeFor(t: nsc.Global.Tree): ScopeTree

    Traverses the scope tree from inner to outer and returns the innermost scope, that is visible from t.

  13. final def getClass(): Class[_]

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

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

    Definition Classes
    Any
  16. def nameCollisions(name: String): List[nsc.Global.Symbol]

    Returns a list of visible symbols whose name is equal to name.

    Returns a list of visible symbols whose name is equal to name. TODO: Handle symbols from other CUs

  17. final def ne(arg0: AnyRef): Boolean

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

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

    Definition Classes
    AnyRef
  20. lazy val outermostScope: ScopeTree

    The outermost scope known.

    The outermost scope known. Usually the package scope of the CU.

  21. def proposeName(preferred: String): String

    Returns a name based on preferred that does not collide with other visible symbols.

  22. def sees(s: nsc.Global.Symbol): Boolean

    Is s visible (and accessible) from this scope?

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

    Definition Classes
    AnyRef
  24. def toString(className: String, identName: String): String

  25. def toString(): String

    Definition Classes
    AnyRef → Any
  26. val visibleScopes: List[ScopeTree]

    Scopes that are visible from this scope.

  27. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  30. def withKnownSymbols(syms: List[nsc.Global.Symbol]): ScopeTree

    Returns a copy of this scope with syms registered as known symbols.

    Returns a copy of this scope with syms registered as known symbols. Also propagates all symbols of syms, that are not introduces in this scope to outerScope.

    Register symbols as known symbols increases the performance of sees(s) and helps to reduce the number of false negatives. This is because it is easier to determine if a symbol is introduced by a scope than if it is not introduced by it.

Inherited from AnyRef

Inherited from Any

Ungrouped