Packages

trait InteractiveNamer extends Namer

Source
Global.scala
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. InteractiveNamer
  2. Namer
  3. NamerContextErrors
  4. MethodSynth
  5. AnyRef
  6. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Value Members

  1. def InferredImplicitError(tree: Global.Tree, inferred: Global.Type, cx: InteractiveAnalyzer.Context): Unit
    Definition Classes
    NamerContextErrors
  2. def accessorTypeCompleter(valDef: Global.ValDef, missingTpt: Boolean, isBean: Boolean, isSetter: Boolean): AccessorTypeCompleter
    Definition Classes
    Namer
  3. def addApplyUnapply(cdef: Global.ClassDef, namer: InteractiveAnalyzer.Namer): Unit

    Given a case class case class C[Ts] (ps: Us) Add the following methods to toScope:

    Given a case class case class C[Ts] (ps: Us) Add the following methods to toScope:

    1. if case class is not abstract, add <synthetic> <case> def apply[Ts](ps: Us): C[Ts] = new C[Ts](ps) 2. add a method <synthetic> <case> def unapply[Ts](x: C[Ts]) = <ret-val> where <ret-val> is the caseClassUnapplyReturnValue of class C (see UnApplies.scala)
    cdef

    is the class definition of the case class

    namer

    is the namer of the module class (the comp. obj)

    Definition Classes
    Namer
  4. def addCopyMethod(cdef: Global.ClassDef, namer: InteractiveAnalyzer.Namer): Unit
    Definition Classes
    Namer
  5. def annotSig(annotations: List[Global.Tree], annotee: Global.Tree, pred: (Global.AnnotationInfo) => Boolean): List[Global.AnnotationInfo]
    Definition Classes
    Namer
  6. def applicableTypeParams(owner: Global.Symbol): List[Global.Symbol]
    Definition Classes
    Namer
  7. def applyUnapplyMethodCompleter(un_applyDef: Global.DefDef, companionContext: InteractiveAnalyzer.Context): InteractiveAnalyzer.TypeCompleter
    Definition Classes
    Namer
  8. def assignAndEnterFinishedSymbol(tree: Global.MemberDef): Global.Symbol
    Definition Classes
    Namer
  9. def assignMemberSymbol(tree: Global.MemberDef, mask: Long = -1L): Global.Symbol
    Definition Classes
    Namer
  10. def completerOf(tree: Global.MemberDef): InteractiveAnalyzer.TypeCompleter
    Definition Classes
    Namer
  11. val context: InteractiveAnalyzer.Context
    Definition Classes
    Namer
  12. def contextFile: AbstractFile
    Definition Classes
    Namer
  13. def copyMethodCompleter(copyDef: Global.DefDef): InteractiveAnalyzer.TypeCompleter
    Definition Classes
    Namer
  14. def createImportSymbol(tree: Global.Import): Global.TermSymbol
    Definition Classes
    Namer
  15. def createInnerNamer(): InteractiveAnalyzer.Namer
    Definition Classes
    Namer
  16. def createMemberSymbol(tree: Global.MemberDef, name: Global.Name, mask: Long): Global.Symbol

    Create a new symbol at the context owner based on the given tree.

    Create a new symbol at the context owner based on the given tree. A different name can be given. If the modifier flags should not be be transferred to the symbol as they are, supply a mask containing the flags to keep.

    Definition Classes
    Namer
  17. def createMethod(accessQual: Global.MemberDef, name: Global.TermName, pos: Global.Position, flags: Long): Global.MethodSymbol
    Definition Classes
    Namer
  18. def createNamer(tree: Global.Tree): InteractiveAnalyzer.Namer
    Definition Classes
    Namer
  19. def createPackageSymbol(pos: Global.Position, pid: Global.RefTree): Global.Symbol

    All PackageClassInfoTypes come from here.

    All PackageClassInfoTypes come from here.

    Definition Classes
    Namer
  20. def createPrimaryConstructorParameterNamer: InteractiveAnalyzer.Namer
    Definition Classes
    Namer
  21. def deriveAccessors(vd: Global.ValDef): Boolean
    Definition Classes
    Namer
  22. def enclosingNamerWithScope(scope: Global.Scope): InteractiveAnalyzer.Namer
    Definition Classes
    Namer
  23. def ensureCompanionObject(cdef: Global.ClassDef, creator: (Global.ClassDef) => Global.Tree = companionModuleDef(_)): Global.Symbol

    If no companion object for clazz exists yet, create one by applying creator to class definition tree.

    If no companion object for clazz exists yet, create one by applying creator to class definition tree.

    returns

    the companion object symbol.

    Definition Classes
    Namer
  24. def enterClassDef(tree: Global.ClassDef): Unit
    Definition Classes
    Namer
  25. def enterClassSymbol(tree: Global.ClassDef): Global.Symbol
    Definition Classes
    Namer
  26. def enterDefDef(tree: Global.DefDef): Unit
    Definition Classes
    Namer
  27. def enterDefaultGetters(meth: Global.Symbol, ddef: Global.DefDef, vparamss: List[List[Global.ValDef]], tparams: List[Global.TypeDef]): Unit

    For every default argument, insert a method symbol computing that default

    For every default argument, insert a method symbol computing that default

    Definition Classes
    Namer
  28. def enterExistingSym(sym: Global.Symbol, tree: Global.Tree): InteractiveAnalyzer.Context
    Definition Classes
    InteractiveNamerNamer
  29. def enterGetterSetter(tree: Global.ValDef): Unit
    Definition Classes
    MethodSynth
  30. def enterIfNotThere(sym: Global.Symbol): Unit
    Definition Classes
    InteractiveNamerNamer
  31. def enterImplicitWrapper(classDef: Global.ClassDef): Unit
    Definition Classes
    MethodSynth
  32. def enterInScope(sym: Global.Symbol, scope: Global.Scope): sym.type

    Enter symbol into given scope and return symbol itself

    Enter symbol into given scope and return symbol itself

    Definition Classes
    Namer
  33. def enterInScope(sym: Global.Symbol): sym.type

    Enter symbol into context's scope and return symbol itself

    Enter symbol into context's scope and return symbol itself

    Definition Classes
    Namer
  34. def enterModuleDef(tree: Global.ModuleDef): Unit
    Definition Classes
    Namer
  35. def enterModuleSymbol(tree: Global.ModuleDef): Global.Symbol

    Enter a module symbol.

    Enter a module symbol.

    Definition Classes
    Namer
  36. def enterPackage(tree: Global.PackageDef): Unit
    Definition Classes
    Namer
  37. def enterSelf(self: Global.ValDef): Unit
    Definition Classes
    Namer
  38. def enterSym(tree: Global.Tree): InteractiveAnalyzer.Context
    Definition Classes
    Namer
  39. def enterSyms(trees: List[Global.Tree]): Unit
    Definition Classes
    Namer
  40. def enterSyntheticSym(tree: Global.Tree): Global.Symbol
    Definition Classes
    Namer
  41. def enterTypeDef(tree: Global.TypeDef): Unit
    Definition Classes
    Namer
  42. def enterValDef(tree: Global.ValDef): Unit
    Definition Classes
    Namer
  43. def enterValueParams(vparamss: List[List[Global.ValDef]]): List[List[Global.Symbol]]
    Definition Classes
    Namer
  44. def expandMacroAnnotations(stats: List[Global.Tree]): List[Global.Tree]
    Definition Classes
    Namer
  45. def findCyclicalLowerBound(tp: Global.Type): Global.Symbol
    Definition Classes
    Namer
    Annotations
    @nowarn()
  46. def handleSyntheticNameConflict(sym1: Global.Symbol, sym2: Global.Symbol): Unit

    Logic to handle name conflicts of synthetically generated symbols We handle right now: t6227

    Logic to handle name conflicts of synthetically generated symbols We handle right now: t6227

    Definition Classes
    Namer
  47. def implicitFactoryMethodCompleter(tree: Global.DefDef, classSym: Global.Symbol): InteractiveAnalyzer.CompleterWrapper
    Definition Classes
    Namer
  48. def importTypeCompleter(tree: Global.Import): ImportTypeCompleter
    Definition Classes
    Namer
  49. def inConstructorFlag: Long
    Definition Classes
    Namer
  50. def includeParent(tpe: Global.Type, parent: Global.Symbol): Global.Type
    Definition Classes
    Namer
  51. def isEnumConstant(vd: Global.ValDef): Boolean

    Determines whether this field holds an enum constant.

    Determines whether this field holds an enum constant. To qualify, the following conditions must be met:

    • The field's class has the ENUM flag set
    • The field's class extends java.lang.Enum
    • The field has the ENUM flag set
    • The field is static
    • The field is stable
    Definition Classes
    Namer
  52. def moduleClassFlags(moduleFlags: Long): Long
    Definition Classes
    Namer
  53. def moduleClassTypeCompleter(tree: Global.ModuleDef): ModuleClassTypeCompleter
    Definition Classes
    Namer
  54. def monoTypeCompleter(tree: Global.MemberDef): MonoTypeCompleter
    Definition Classes
    Namer
  55. def namerOf(sym: Global.Symbol): InteractiveAnalyzer.Namer
    Definition Classes
    Namer
  56. def saveDefaultGetter(meth: Global.Symbol, default: Global.Symbol): Unit
    Definition Classes
    InteractiveNamerNamer
  57. def selfTypeCompleter(tree: Global.Tree): SelfTypeCompleter
    Definition Classes
    Namer
  58. def setPrivateWithin(tree: Global.MemberDef, sym: Global.Symbol): sym.type
    Definition Classes
    Namer
  59. def setPrivateWithin[T <: Global.Symbol](tree: Global.Tree, sym: T, mods: Global.Modifiers): sym.type
    Definition Classes
    Namer
  60. def standardEnsureCompanionObject(cdef: Global.ClassDef, creator: (Global.ClassDef) => Global.Tree = companionModuleDef(_)): Global.Symbol

    Default implementation of ensureCompanionObject.

    Default implementation of ensureCompanionObject. Can be overridden by analyzer plugins (see AnalyzerPlugins.pluginsEnsureCompanionObject for more details)

    Definition Classes
    Namer
  61. def standardEnterSym(tree: Global.Tree): InteractiveAnalyzer.Context

    Default implementation of enterSym.

    Default implementation of enterSym. Can be overridden by analyzer plugins (see AnalyzerPlugins.pluginsEnterSym for more details)

    Definition Classes
    Namer
  62. def typeErrorHandler[T](tree: Global.Tree, alt: T): PartialFunction[Throwable, T]
    Definition Classes
    Namer
  63. def typeSig(tree: Global.Tree, annotSigs: List[Global.AnnotationInfo]): Global.Type

    TypeSig is invoked by monoTypeCompleters.

    TypeSig is invoked by monoTypeCompleters. It returns the type of a definition which is then assigned to the corresponding symbol (typeSig itself does not need to assign the type to the symbol, but it can if necessary).

    Definition Classes
    Namer
  64. val typer: InteractiveAnalyzer.Typer
    Definition Classes
    Namer
  65. def updatePosFlags(sym: Global.Symbol, pos: Global.Position, flags: Long): sym.type
    Definition Classes
    Namer
  66. def valTypeCompleter(tree: Global.ValDef): ValTypeCompleter
    Definition Classes
    Namer
  67. def validate(sym: Global.Symbol): Unit

    Check that symbol's definition is well-formed.

    Check that symbol's definition is well-formed. This means:

    • no conflicting modifiers
    • abstract modifier only for classes
    • override modifier never for classes
    • def modifier never for parameters of case classes
    • declarations only in mixins or abstract classes (when not @native)
    Definition Classes
    Namer
  68. def validateCompanionDefs(tree: Global.ImplDef): Unit

    Given a ClassDef or ModuleDef, verifies there isn't a companion which has been defined in a separate file.

    Given a ClassDef or ModuleDef, verifies there isn't a companion which has been defined in a separate file.

    Definition Classes
    Namer
  69. object NamerErrorGen
    Definition Classes
    NamerContextErrors