scala.tools.refactoring.analysis

GlobalIndexes

trait GlobalIndexes extends Indexes with DependentSymbolExpanders with CompilationUnitIndexes with EnrichedTrees with InteractiveScalaCompiler with TreeTraverser

Provides an implementation of the Indexes.IndexLookup trait by combining various CompilationUnitIndexes. Note that creating the GlobalIndex is cheap, all the compilation units were already indexed, and all further work is only done on demand.

Linear Supertypes
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. GlobalIndexes
  2. TreeTraverser
  3. InteractiveScalaCompiler
  4. CompilerAccess
  5. EnrichedTrees
  6. CompilationUnitIndexes
  7. DependentSymbolExpanders
  8. SilentTracing
  9. Tracing
  10. Indexes
  11. AnyRef
  12. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Type Members

  1. trait Companion extends (DependentSymbolExpanders.this)#SymbolExpander

    Definition Classes
    DependentSymbolExpanders
  2. trait CompilationUnitIndex extends AnyRef

    Definition Classes
    CompilationUnitIndexes
  3. implicit class DefDefMethods extends AnyRef

    Definition Classes
    EnrichedTrees
  4. trait ExpandGetterSetters extends (DependentSymbolExpanders.this)#SymbolExpander

    Definition Classes
    DependentSymbolExpanders
  5. class FilterTreeTraverser extends nsc.Global.FilterTreeTraverser with (TreeTraverser.this)#Traverser

    Definition Classes
    TreeTraverser
  6. trait GlobalIndex extends IndexLookup

  7. case class ImportSelectorTree(name: (EnrichedTrees.this)#NameTree, rename: nsc.Global.Tree) extends nsc.Global.Tree with Product with Serializable

    Represent an import selector as a tree, including both names as trees.

  8. implicit class ImportSelectorTreeExtractor extends AnyRef

    Import selectors are not trees, but we can provide an extractor that converts the ImportSelectors into our own ImportSelectorTrees.

  9. trait IndexLookup extends AnyRef

    Definition Classes
    Indexes
  10. trait LazyValAccessor extends (DependentSymbolExpanders.this)#SymbolExpander

    Definition Classes
    DependentSymbolExpanders
  11. case class ModifierTree(flag: Long) extends nsc.Global.Tree with Product with Serializable

    Represent a modifier as a tree, including its position.

  12. case class MultipleAssignment(extractor: nsc.Global.Tree, names: List[nsc.Global.ValDef], rhs: nsc.Global.Tree) extends nsc.Global.Tree with Product with Serializable

    Definition Classes
    EnrichedTrees
  13. case class NameTree(name: nsc.Global.Name) extends nsc.Global.Tree with Product with Serializable

    Represent a Name as a tree, including its position.

  14. case class NamedArgument(nameTree: (EnrichedTrees.this)#NameTree, rhs: nsc.Global.Tree) extends nsc.Global.SymTree with nsc.Global.RefTree with Product with Serializable

    Definition Classes
    EnrichedTrees
  15. class NotInstanceOf[T] extends AnyRef

    Definition Classes
    EnrichedTrees
  16. trait OverridesInSuperClasses extends (DependentSymbolExpanders.this)#SymbolExpander

    Definition Classes
    DependentSymbolExpanders
  17. abstract class PlainText extends nsc.Global.Tree

    The PlainText "tree" provides a hook into the source code generation.

  18. implicit class RichModifiers extends AnyRef

    Definition Classes
    EnrichedTrees
  19. case class SelfTypeTree(name: (EnrichedTrees.this)#NameTree, tpt: nsc.Global.Tree) extends nsc.Global.Tree with Product with Serializable

    Representation of self type annotations: self: A with B => ^^^^^^^^^^^^^^

  20. case class SuperConstructorCall(clazz: nsc.Global.Tree, args: List[nsc.Global.Tree]) extends nsc.Global.Tree with Product with Serializable

    The call to the super constructor in a class: class A(i: Int) extends B(i) ^^^^

  21. trait SuperConstructorParameters extends (DependentSymbolExpanders.this)#SymbolExpander

    Definition Classes
    DependentSymbolExpanders
  22. trait SymbolExpander extends AnyRef

    The basic trait that is extended by the concrete expanders.

  23. class TemplateMethods extends AnyRef

    Definition Classes
    EnrichedTrees
  24. implicit class TraceAndReturn[T] extends AnyRef

    Definition Classes
    Tracing
  25. trait Traverser extends nsc.Global.Traverser

    A traverser that also traverses a TypeTree's original type.

  26. trait TraverserWithFakedTrees extends nsc.Global.Traverser

    A traverser that creates fake trees for various type trees so they can be treated as if they were regular trees.

  27. class TreeMethodsForPositions extends AnyRef

    Add some methods to Tree that make it easier to compare Trees by position and to extract the position of a tree's name, which is tricky for Selects.

  28. class TreeWithSymbolTraverser extends nsc.Global.Traverser with (TreeTraverser.this)#Traverser

    Definition Classes
    TreeTraverser
  29. case class SourceLayoutTree(kind: Kinds) extends nsc.Global.Tree with Product with Serializable

    A SourceLayoutTree can be used to insert arbitrary text into the code, for example, blank lines.

Abstract Value Members

  1. abstract val global: Global

  2. abstract def index: IndexLookup

    Definition Classes
    Indexes

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. object ApplyExtractor

    Definition Classes
    EnrichedTrees
  7. object BlockExtractor

    Unify the children of a Block tree and sort them in the same order they appear in the source code.

  8. object CompilationUnitIndex

    Definition Classes
    CompilationUnitIndexes
  9. val EmptyIndex: IndexLookup

  10. object GlobalIndex

  11. object ModifierTree extends Serializable

    Extract the modifiers with their position from a Modifiers object.

  12. object NameTree extends Serializable

    Definition Classes
    EnrichedTrees
  13. object NoBlock extends (EnrichedTrees.this)#NotInstanceOf[nsc.Global.Block]

    Definition Classes
    EnrichedTrees
  14. object NoFunction extends (EnrichedTrees.this)#NotInstanceOf[nsc.Global.Function]

    Definition Classes
    EnrichedTrees
  15. object NoImportSelectorTree extends (EnrichedTrees.this)#NotInstanceOf[(EnrichedTrees.this)#ImportSelectorTree]

    Definition Classes
    EnrichedTrees
  16. object NoPackageDef extends (EnrichedTrees.this)#NotInstanceOf[nsc.Global.PackageDef]

    Definition Classes
    EnrichedTrees
  17. object PlainText

    Definition Classes
    EnrichedTrees
  18. object TemplateExtractor

    Provides a finer-grained extractor for Template that distinguishes between class constructor parameters, early definitions, parents, self type annotation and the real body.

  19. object ValOrDefDef

    Copy of scala.reflect.internal.Trees.ValOrDefDef of 2.

  20. implicit def additionalTemplateMethods(t: nsc.interactive.Global.Template): TemplateMethods

    Definition Classes
    EnrichedTrees
  21. implicit def additionalTreeMethodsForPositions(t: nsc.interactive.Global.Tree): TreeMethodsForPositions

    Definition Classes
    EnrichedTrees
  22. def ancestorSymbols(t: nsc.interactive.Global.Tree): List[nsc.interactive.Global.Symbol]

    returns

    Returns the (symbol) ancestors of the tree excluding the ROOT in descending order. Also filters the symbols for package objects!

    Definition Classes
    EnrichedTrees
  23. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  24. def asSelectorString(t: nsc.interactive.Global.Tree): String

    Converts a tree containing Idents and Selects to a . separated string.

    Converts a tree containing Idents and Selects to a . separated string.

    Definition Classes
    EnrichedTrees
  25. def askLoadedAndTypedTreeForFile(file: SourceFile): Either[nsc.interactive.Global.Tree, Throwable]

    Returns a fully loaded and typed Tree instance for the given SourceFile.

    Returns a fully loaded and typed Tree instance for the given SourceFile.

    Definition Classes
    InteractiveScalaCompiler
  26. def children: (nsc.interactive.Global.Tree) ⇒ List[nsc.interactive.Global.Tree]

    Returns all children that have a representation in the source code.

    Returns all children that have a representation in the source code. This includes Name and Modifier trees and excludes everything that has no Position or is an EmptyTree.

    Definition Classes
    EnrichedTrees
  27. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  28. def compilationUnitOfFile(f: AbstractFile): Option[nsc.interactive.Global.RichCompilationUnit]

  29. def context[T](name: String)(body: ⇒ T): T

    Definition Classes
    SilentTracingTracing
    Annotations
    @inline()
  30. def endPositionAtEndOfSourceFile(pos: nsc.interactive.Global.Position, otherWise: Option[Int] = None): Int

    Trees that reach the end of the file don't seem to have the correct end position, except if there's a newline at the end.

    Trees that reach the end of the file don't seem to have the correct end position, except if there's a newline at the end.

    Definition Classes
    EnrichedTrees
  31. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  32. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  33. def escapeScalaKeywordsForImport(n: String): String

    Definition Classes
    EnrichedTrees
  34. def escapeScalaKeywordsForImport(n: nsc.interactive.Global.Name): String

    Takes a name and wraps it in if the name corresponds to a Scala keyword.

    Takes a name and wraps it in if the name corresponds to a Scala keyword.

    Definition Classes
    EnrichedTrees
  35. def filterTree(t: nsc.interactive.Global.Tree, traverser: nsc.interactive.Global.FilterTreeTraverser): collection.immutable.List[nsc.interactive.Global.Tree]

    Definition Classes
    TreeTraverser
  36. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  37. val findAllTreesWithTheSamePosition: (nsc.interactive.Global.Tree) ⇒ Iterable[nsc.interactive.Global.Tree]

    Definition Classes
    EnrichedTrees
  38. def findOriginalTree: (nsc.interactive.Global.Tree) ⇒ Option[nsc.interactive.Global.Tree]

    Finds a tree by its position, can be used to find the original tree from a transformed tree.

    Finds a tree by its position, can be used to find the original tree from a transformed tree.

    If multiple trees are candidates, then take the last one, because it is likely more specific.

    Definition Classes
    EnrichedTrees
  39. def findSymbolForImportSelector(expr: nsc.interactive.Global.Tree, name: nsc.interactive.Global.Name): Option[nsc.interactive.Global.Symbol]

    Searches for a Symbol of a name in the type members of a tree.

    Searches for a Symbol of a name in the type members of a tree.

    This is mainly used for ImportSelectors, which don't carry any symbol information with them.

    expr

    The expr of an Import tree.

    name

    The name of an ImportSelector of the import.

    Definition Classes
    EnrichedTrees
  40. final def getClass(): Class[_]

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

    Definition Classes
    AnyRef → Any
  42. def isClassTag(c: nsc.interactive.Global.Constant): Boolean

    Definition Classes
    EnrichedTrees
  43. def isEmptyTree(t: nsc.interactive.Global.Tree): Boolean

    Returns whether the tree is considered empty.

    Returns whether the tree is considered empty.

    Prior to Scala 2.10.1 it was sufficient to check Tree#isEmpty, but now we also need to check if the tree is equal to emptyValDef.

    Definition Classes
    EnrichedTrees
  44. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  45. def keepTree(t: nsc.interactive.Global.Tree): Boolean

    Definition Classes
    EnrichedTrees
  46. final def ne(arg0: AnyRef): Boolean

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

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

    Definition Classes
    AnyRef
  49. val originalLeftSibling: (nsc.interactive.Global.Tree) ⇒ Option[nsc.interactive.Global.Tree]

    Definition Classes
    EnrichedTrees
  50. val originalParentOf: (nsc.interactive.Global.Tree) ⇒ Option[nsc.interactive.Global.Tree]

    Definition Classes
    EnrichedTrees
  51. val originalRightSibling: (nsc.interactive.Global.Tree) ⇒ Option[nsc.interactive.Global.Tree]

    Definition Classes
    EnrichedTrees
  52. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  53. def toString(): String

    Definition Classes
    AnyRef → Any
  54. def topPackageDef(t: nsc.interactive.Global.PackageDef): nsc.interactive.Global.PackageDef

    returns

    Returns the most specific package declaration in the compilation unit. For example, given the following declaration:

    package a package b

    class C

    it returns b. If there are further nested packages, they are ignored:

    package a class C package b

    returns a.

    Definition Classes
    EnrichedTrees
  55. def trace(msg: ⇒ String): Unit

    Definition Classes
    SilentTracingTracing
    Annotations
    @inline()
  56. def trace(msg: ⇒ String, arg1: ⇒ Any, args: Any*): Unit

    Definition Classes
    SilentTracingTracing
    Annotations
    @inline()
  57. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Deprecated Value Members

  1. object SourceLayouts

    Definition Classes
    EnrichedTrees
    Annotations
    @deprecated
    Deprecated

    (Since version 0.5.0) Use PlainText objects and its components

Inherited from TreeTraverser

Inherited from InteractiveScalaCompiler

Inherited from CompilerAccess

Inherited from EnrichedTrees

Inherited from CompilationUnitIndexes

Inherited from DependentSymbolExpanders

Inherited from SilentTracing

Inherited from Tracing

Inherited from Indexes

Inherited from AnyRef

Inherited from Any

Ungrouped