PlainSkelBuilder

trait BCPickles
class Object
trait Matchable
class Any

Type members

Classlikes

case class Local(tk: BType, name: String, idx: Int, isSynth: Boolean)
object bc extends JCodeMethodN
object locals

Value members

Abstract methods

def genLoad(tree: Tree, expectedType: BType): Unit

Concrete methods

def emitLocalVarScope(sym: Symbol, start: Label, end: Label, force: Boolean): Unit
def gen(tree: Tree): Unit
def genDefDef(dd: DefDef): Unit
Definition Classes
def initJMethod(flags: Int, params: List[Symbol]): Unit
def lineNumber(tree: Tree): Unit
def paramTKs(app: Apply, take: Int): List[BType]
def programPoint(labelSym: Symbol): Label
def registerCleanup(finCleanup: Label): Unit
def symInfoTK(sym: Symbol): BType
def tpeTK(tree: Tree): BType
def unregisterCleanup(finCleanup: Label): Unit

Inherited methods

def addForwarders(jclass: ClassVisitor, jclassName: String, moduleClass: Symbol): Unit
Inherited from
BCForwardersGen
def addSerialVUID(id: Long, jclass: ClassVisitor): Unit
Inherited from
BCClassGen
final def asmMethodType(msym: Symbol): MethodBType
Inherited from
BCInnerClassGen
Inherited from
BCInnerClassGen
def emitAnnotations(fw: FieldVisitor, annotations: List[Annotation]): Unit
Inherited from
BCAnnotGen
Inherited from
BCAnnotGen
def emitAnnotations(cw: ClassVisitor, annotations: List[Annotation]): Unit
Inherited from
BCAnnotGen
Inherited from
BCAnnotGen
def emitParamNames(jmethod: MethodVisitor, params: List[Symbol]): Unit
Inherited from
BCAnnotGen

The ClassBType for a class symbol. If the class is nested, the ClassBType is added to the innerClassBufferASM.

The ClassBType for a class symbol. If the class is nested, the ClassBType is added to the innerClassBufferASM.

The class symbol scala.Nothing is mapped to the class scala.runtime.Nothing$. Similarly, scala.Null is mapped to scala.runtime.Null$. This is because there exist no class files for the Nothing / Null. If used for example as a parameter type, we use the runtime classes in the classfile method signature.

Note that the referenced class symbol may be an implementation class. For example when compiling a mixed-in method that forwards to the static method in the implementation class, the class descriptor of the receiver (the implementation class) is obtained by creating the ClassBType.

Inherited from
BCInnerClassGen

Generates the generic signature for sym before erasure.

Generates the generic signature for sym before erasure.

Value Params
owner

The owner of sym.

sym

The symbol for which to generate a signature.

Returns

The generic signature of sym before erasure, as specified in the Java Virtual Machine Specification, ยง4.3.4, or null if sym doesn't need a generic signature.

See also
Inherited from
BCJGenSigGen
final def internalName(sym: Symbol): String

The class internal name for a given class symbol. If the symbol describes a nested class, the ClassBType is added to the innerClassBufferASM.

The class internal name for a given class symbol. If the symbol describes a nested class, the ClassBType is added to the innerClassBufferASM.

Inherited from
BCInnerClassGen
def legacyAddCreatorCode(clinit: MethodVisitor, cnode: ClassNode, thisName: String): Unit
Inherited from
JAndroidBuilder
final def symDescriptor(sym: Symbol): String

The jvm descriptor for a symbol. If sym represents a nested class, its ClassBType is added to the innerClassBufferASM.

The jvm descriptor for a symbol. If sym represents a nested class, its ClassBType is added to the innerClassBufferASM.

Inherited from
BCInnerClassGen
final def toTypeKind(tp: Type): BType
Inherited from
BCInnerClassGen
final def typeDescriptor(t: Type): String

The jvm descriptor of a type. If t references a nested class, its ClassBType is added to the innerClassBufferASM.

The jvm descriptor of a type. If t references a nested class, its ClassBType is added to the innerClassBufferASM.

Inherited from
BCInnerClassGen

Inherited fields

final val emitLines: Boolean
Inherited from
BCInnerClassGen
final val emitSource: Boolean
Inherited from
BCInnerClassGen
final val emitVars: Boolean
Inherited from
BCInnerClassGen