abstract class PlainSkelBuilder extends BCClassGen with BCAnnotGen with BCInnerClassGen with JAndroidBuilder with BCForwardersGen with BCPickles with BCJGenSigGen

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. PlainSkelBuilder
  2. BCPickles
  3. BCForwardersGen
  4. BCJGenSigGen
  5. JAndroidBuilder
  6. BCAnnotGen
  7. BCClassGen
  8. BCInnerClassGen
  9. AnyRef
  10. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new PlainSkelBuilder(cunit: Global.CompilationUnit)

Type Members

  1. case class Local(tk: BTypesFromSymbols.BType, name: String, idx: Int, isSynth: Boolean) extends Product with Serializable

Abstract Value Members

  1. abstract def genLoad(tree: Global.Tree, expectedType: BTypesFromSymbols.BType): Unit

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. val MIN_SWITCH_DENSITY: Double
    Definition Classes
    BCClassGen
  5. final val MaximumJvmParameters: Int(254)
  6. def addClassFields(): Unit
  7. def addForwarders(isRemoteClass: Boolean, jclass: ClassVisitor, jclassName: String, moduleClass: Global.Symbol): Unit
    Definition Classes
    BCForwardersGen
  8. def addRemoteExceptionAnnot(isRemoteClass: Boolean, isJMethodPublic: Boolean, meth: Global.Symbol): Unit
    Definition Classes
    BCForwardersGen
  9. def addSerialVUID(id: Long, jclass: ClassVisitor): Unit
    Definition Classes
    BCClassGen
  10. val androidFieldName: Global.TermName
    Definition Classes
    JAndroidBuilder
  11. final def arrEncode(sb: Global.ScalaSigBytes): Array[String]
    Definition Classes
    BCAnnotGen
  12. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  13. var claszSymbol: Global.Symbol
  14. var cleanups: List[Label]
  15. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )
  16. var cnode: ClassNode
  17. def createJAttribute(name: String, b: Array[Byte], offset: Int, len: Int): Attribute
    Definition Classes
    BCPickles
  18. def currProgramPoint(): Label
  19. def debugLevel: Int
    Definition Classes
    BCInnerClassGen
  20. def descriptorForErasedType(tp: Global.Type): String
    Definition Classes
    BCAnnotGen
  21. var earlyReturnVar: Global.Symbol
  22. def emitAnnotations(fw: FieldVisitor, annotations: List[Global.AnnotationInfo]): Unit
    Definition Classes
    BCAnnotGen
  23. def emitAnnotations(mw: MethodVisitor, annotations: List[Global.AnnotationInfo]): Unit
    Definition Classes
    BCAnnotGen
  24. def emitAnnotations(cw: ClassVisitor, annotations: List[Global.AnnotationInfo]): Unit
    Definition Classes
    BCAnnotGen
  25. def emitArgument(av: AnnotationVisitor, name: String, arg: Global.ClassfileAnnotArg): Unit
    Definition Classes
    BCAnnotGen
  26. def emitAssocs(av: AnnotationVisitor, assocs: List[(Global.Name, Global.ClassfileAnnotArg)]): Unit
    Definition Classes
    BCAnnotGen
  27. final val emitLines: Boolean
    Definition Classes
    BCInnerClassGen
  28. def emitLocalVarScope(sym: Global.Symbol, start: Label, end: Label, force: Boolean = false): Unit
  29. def emitParamAnnotations(jmethod: MethodVisitor, pannotss: List[List[Global.AnnotationInfo]]): Unit
    Definition Classes
    BCAnnotGen
  30. def emitParamNames(jmethod: MethodVisitor, params: List[Global.Symbol]): Unit
    Definition Classes
    BCAnnotGen
  31. final val emitSource: Boolean
    Definition Classes
    BCInnerClassGen
  32. final val emitVars: Boolean
    Definition Classes
    BCInnerClassGen
  33. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  34. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  35. def erasedType(tp: Global.Type): Global.Type

    Annotations are not processed by the compilation pipeline like ordinary trees.

    Annotations are not processed by the compilation pipeline like ordinary trees. Instead, the typer extracts them into AnnotationInfo objects which are attached to the corresponding symbol (sym.annotations) or type (as an AnnotatedType, eliminated by erasure).

    For Scala annotations this is OK: they are stored in the pickle and ignored by the backend. Java annotations on the other hand are additionally emitted to the classfile in Java's format.

    This means that Type instances within an AnnotationInfo reach the backend non-erased. Examples:

    • @(javax.annotation.Resource @annotation.meta.getter) val x = 0 Here, annotationInfo.atp is an AnnotatedType.
    • @SomeAnnotation[T] val x = 0 In principle, the annotationInfo.atp is a non-erased type ref. However, this cannot actually happen because Java annotations cannot be generic.
    • @javax.annotation.Resource(type = classOf[List[_]]) val x = 0 The annotationInfo.assocs contains a LiteralAnnotArg(Constant(tp)) where tp is the non-erased existential type.
    Definition Classes
    BCAnnotGen
  36. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  37. def gen(tree: Global.Tree): Unit
  38. def genDefDef(dd: Global.DefDef): Unit
  39. def genPlainClass(cd: Global.ClassDef): Unit
  40. def getAnnotPickle(jclassName: String, sym: Global.Symbol): Option[Global.AnnotationInfo]
    Definition Classes
    BCPickles
  41. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  42. def getExceptions(excs: List[Global.AnnotationInfo]): List[String]
    Definition Classes
    BCForwardersGen
  43. def getGenericSignature(sym: Global.Symbol, owner: Global.Symbol, memberTpe: Global.Type): String
    Definition Classes
    BCJGenSigGen
  44. def getGenericSignature(sym: Global.Symbol, owner: Global.Symbol): String
    Definition Classes
    BCJGenSigGen
  45. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  46. def initJMethod(flags: Int, params: List[Global.Symbol]): Unit
  47. final def internalName(sym: Global.Symbol): String

    The class internal name for a given class symbol.

    The class internal name for a given class symbol.

    Definition Classes
    BCInnerClassGen
  48. def isAndroidParcelableClass(sym: Global.Symbol): Boolean
    Definition Classes
    JAndroidBuilder
  49. def isAtProgramPoint(lbl: Label): Boolean
  50. var isCZParcelable: Boolean
  51. var isCZRemote: Boolean
  52. var isCZStaticModule: Boolean
  53. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  54. var isMethSymStaticCtor: Boolean
  55. var isModuleInitialized: Boolean
  56. var jMethodName: String
  57. var jumpDest: Map[Global.Symbol, Label]
  58. var labelDef: Map[Global.Symbol, Global.LabelDef]
  59. var labelDefsAtOrUnder: Map[Global.Tree, List[Global.LabelDef]]
  60. var lastEmittedLineNr: Int
  61. def lastInsn: AbstractInsnNode
  62. def legacyAddCreatorCode(clinit: MethodVisitor, cnode: ClassNode, thisName: String): Unit
    Definition Classes
    JAndroidBuilder
  63. def lineNumber(tree: Global.Tree): Unit
  64. def markProgramPoint(lbl: Label): Unit
  65. var methSymbol: Global.Symbol
  66. var mnode: MethodNode
  67. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  68. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  69. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  70. def paramTKs(app: Global.Apply): List[BTypesFromSymbols.BType]
  71. def pickleMarkerForeign: Attribute
    Definition Classes
    BCPickles
  72. def pickleMarkerLocal: Attribute
    Definition Classes
    BCPickles
  73. def programPoint(labelSym: Global.Symbol): Label
  74. def registerCleanup(finCleanup: Label): Unit
  75. def resetMethodBookkeeping(dd: Global.DefDef): Unit
  76. var returnType: BTypesFromSymbols.BType
  77. var shouldEmitCleanup: Boolean
  78. def symInfoTK(sym: Global.Symbol): BTypesFromSymbols.BType
  79. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  80. var thisBType: BTypesFromSymbols.ClassBType
  81. def toString(): String
    Definition Classes
    AnyRef → Any
  82. def tpeTK(tree: Global.Tree): BTypesFromSymbols.BType
  83. def ubytesToCharArray(bytes: Array[Byte]): Array[Char]
    Definition Classes
    BCAnnotGen
  84. def unregisterCleanup(finCleanup: Label): Unit
  85. var varsInScope: List[(Global.Symbol, Label)]
  86. val versionPickle: PickleBuffer
    Definition Classes
    BCPickles
  87. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  88. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  89. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )
  90. object bc extends BCodeSkelBuilder.JCodeMethodN
  91. object locals

Inherited from AnyRef

Inherited from Any

Ungrouped