Class

scala.tools.refactoring.analysis.ScopeAnalysis

LocalScope

Related Doc: package ScopeAnalysis

Permalink

case class LocalScope(enclosing: nsc.Global.Tree, decls: List[nsc.Global.DefTree], outerScope: Option[ScopeTree], knownSymbols: List[nsc.Global.Symbol] = Nil) extends ScopeTree with Product with Serializable

Declarations of values and types that are not class members are transformed to LocalScopes. This also includes parameter lists and bindings in case statements.

One LocalScope can also represent more than one declaration if it is constructed from parameter lists or bindings.

Linear Supertypes
Serializable, java.io.Serializable, Product, Equals, ScopeTree, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. LocalScope
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. ScopeTree
  7. AnyRef
  8. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new LocalScope(enclosing: nsc.Global.Tree, decls: List[nsc.Global.DefTree], outerScope: Option[ScopeTree], knownSymbols: List[nsc.Global.Symbol] = Nil)

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

    Permalink
    Definition Classes
    Any
  5. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. def copy(outerScope: Option[ScopeTree], knownSymbols: List[nsc.Global.Symbol]): LocalScope

    Permalink
    Definition Classes
    LocalScopeScopeTree
  7. val declPos: nsc.Global.Position

    Permalink
  8. val decls: List[nsc.Global.DefTree]

    Permalink
  9. val enclosing: nsc.Global.Tree

    Permalink

    A tree that fully encloses this scope.

    A tree that fully encloses this scope.

    Definition Classes
    LocalScopeScopeTree
  10. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  11. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  12. def findScopeFor(pos: nsc.Global.Position): ScopeTree

    Permalink

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

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

    Definition Classes
    LocalScopeScopeTree
  13. def findScopeFor(t: nsc.Global.Tree): ScopeTree

    Permalink

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

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

    Definition Classes
    ScopeTree
  14. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  15. def introducedInThisScope(s: nsc.Global.Symbol): Boolean

    Permalink

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

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

    Definition Classes
    LocalScopeScopeTree
  16. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  17. val knownSymbols: List[nsc.Global.Symbol]

    Permalink

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

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

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

    Permalink

    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

    Definition Classes
    ScopeTree
  19. final def ne(arg0: AnyRef): Boolean

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

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

    Permalink
    Definition Classes
    AnyRef
  22. val outerScope: Option[ScopeTree]

    Permalink

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

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

    Definition Classes
    LocalScopeScopeTree
  23. lazy val outermostScope: ScopeTree

    Permalink

    The outermost scope known.

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

    Definition Classes
    ScopeTree
  24. def proposeName(preferred: String): String

    Permalink

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

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

    Definition Classes
    ScopeTree
  25. def sees(s: nsc.Global.Symbol): Boolean

    Permalink

    Is s visible (and accessible) from this scope?

    Is s visible (and accessible) from this scope?

    Definition Classes
    ScopeTree
  26. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  27. def toString(): String

    Permalink
    Definition Classes
    LocalScope → AnyRef → Any
  28. def toString(className: String, identName: String): String

    Permalink
    Definition Classes
    ScopeTree
  29. val visibleScopes: List[ScopeTree]

    Permalink

    Scopes that are visible from this scope.

    Scopes that are visible from this scope.

    Definition Classes
    ScopeTree
  30. final def wait(): Unit

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

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

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

    Permalink

    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.

    Definition Classes
    ScopeTree

Inherited from Serializable

Inherited from java.io.Serializable

Inherited from Product

Inherited from Equals

Inherited from ScopeTree

Inherited from AnyRef

Inherited from Any

Ungrouped