scala
.
tools
.
nsc
.
backend
.
jvm
.
BCodeBodyBuilder
PlainBodyBuilder
abstract
class
PlainBodyBuilder
extends
PlainSkelBuilder
Linear Supertypes
BCodeBodyBuilder.PlainSkelBuilder
,
BCodeBodyBuilder.BCPickles
,
BCodeBodyBuilder.BCForwardersGen
,
BCodeBodyBuilder.BCJGenSigGen
,
BCodeBodyBuilder.JAndroidBuilder
,
BCodeBodyBuilder.BCAnnotGen
,
BCodeBodyBuilder.BCClassGen
,
BCodeBodyBuilder.BCInnerClassGen
,
AnyRef
,
Any
Known Subclasses
PlainClassBuilder
,
SyncAndTryBuilder
Type Hierarchy
Learn more about scaladoc diagrams
PlainBodyBuilder
SyncAndTryBuilder
PlainSkelBuilder
Ordering
Alphabetic
By inheritance
Inherited
PlainBodyBuilder
PlainSkelBuilder
BCPickles
BCForwardersGen
BCJGenSigGen
JAndroidBuilder
BCAnnotGen
BCClassGen
BCInnerClassGen
AnyRef
Any
Implicitly
by StringAdd
by StringFormat
by Ensuring
by ArrowAssoc
Hide All
Show all
Learn more about member selection
Visibility
Public
All
Instance Constructors
new
PlainBodyBuilder
(
cunit:
Global.CompilationUnit
)
Type Members
case class
EnclMethodEntry
(
owner:
String
,
name:
String
,
methodType:
BCodeHelpers.BType
)
extends
Product
with
Serializable
Definition Classes
BCClassGen
case class
Local
(
tk:
BCodeSkelBuilder.BType
,
name:
String
,
idx:
Int
,
isSynth:
Boolean
)
extends
Product
with
Serializable
Definition Classes
PlainSkelBuilder
Abstract Value Members
abstract
def
genLoadTry
(
tree:
Global.Try
)
:
BCodeBodyBuilder.BType
abstract
def
genSynchronized
(
tree:
Global.Apply
,
expectedType:
BCodeBodyBuilder.BType
)
:
BCodeBodyBuilder.BType
Concrete Value Members
final
def
!=
(
arg0:
AnyRef
)
:
Boolean
Definition Classes
AnyRef
final
def
!=
(
arg0:
Any
)
:
Boolean
Definition Classes
Any
final
def
##
()
:
Int
Definition Classes
AnyRef → Any
def
+
(
other:
String
)
:
String
Implicit information
This member is added by an implicit conversion from
PlainBodyBuilder
to
StringAdd
[
PlainBodyBuilder
] performed by method StringAdd in scala.Predef.
Definition Classes
StringAdd
def
->
[
B
]
(
y:
B
)
: (
PlainBodyBuilder
,
B
)
Implicit information
This member is added by an implicit conversion from
PlainBodyBuilder
to
ArrowAssoc
[
PlainBodyBuilder
] performed by method ArrowAssoc in scala.Predef.
Definition Classes
ArrowAssoc
Annotations
@inline
()
final
def
==
(
arg0:
AnyRef
)
:
Boolean
Definition Classes
AnyRef
final
def
==
(
arg0:
Any
)
:
Boolean
Definition Classes
Any
val
ExcludedForwarderFlags
:
Long
Definition Classes
BCForwardersGen
val
MIN_SWITCH_DENSITY
:
Double
Definition Classes
BCClassGen
final
val
MaximumJvmParameters
: Int(254)
Definition Classes
PlainSkelBuilder
def
adapt
(
from:
BCodeBodyBuilder.BType
,
to:
BCodeBodyBuilder.BType
)
:
Unit
def
addClassFields
()
:
Unit
Definition Classes
PlainSkelBuilder
def
addForwarders
(
isRemoteClass:
Boolean
,
jclass:
ClassVisitor
,
jclassName:
String
,
moduleClass:
Global.Symbol
)
:
Unit
Definition Classes
BCForwardersGen
def
addRemoteExceptionAnnot
(
isRemoteClass:
Boolean
,
isJMethodPublic:
Boolean
,
meth:
Global.Symbol
)
:
Unit
Definition Classes
BCForwardersGen
def
addSerialVUID
(
id:
Long
,
jclass:
ClassVisitor
)
:
Unit
Definition Classes
BCClassGen
val
androidFieldName
:
Global.TermName
Definition Classes
JAndroidBuilder
final
def
asInstanceOf
[
T0
]
:
T0
Definition Classes
Any
final
def
asmClassType
(
sym:
Global.Symbol
)
:
BCodeBodyBuilder.BType
Definition Classes
BCInnerClassGen
def
asmMethodType
(
msym:
Global.Symbol
)
:
BCodeBodyBuilder.BType
Definition Classes
BCInnerClassGen
object
bc
extends
BCodeSkelBuilder.JCodeMethodN
Definition Classes
PlainSkelBuilder
var
claszSymbol
:
Global.Symbol
Definition Classes
PlainSkelBuilder
var
cleanups
:
List
[
Label
]
Definition Classes
PlainSkelBuilder
def
clone
()
:
AnyRef
Attributes
protected[
java.lang
]
Definition Classes
AnyRef
Annotations
@throws
(
...
)
var
cnode
:
ClassNode
Definition Classes
PlainSkelBuilder
def
createJAttribute
(
name:
String
,
b:
Array
[
Byte
]
,
offset:
Int
,
len:
Int
)
:
Attribute
Definition Classes
BCPickles
def
currProgramPoint
()
:
Label
Definition Classes
PlainSkelBuilder
def
debugLevel
:
Int
Definition Classes
BCInnerClassGen
final
def
descriptor
(
sym:
Global.Symbol
)
:
String
Definition Classes
BCInnerClassGen
final
def
descriptor
(
t:
Global.Type
)
:
String
Definition Classes
BCInnerClassGen
var
earlyReturnVar
:
Global.Symbol
Definition Classes
PlainSkelBuilder
def
emit
(
opc:
Int
)
:
Unit
def
emitAnnotations
(
fw:
FieldVisitor
,
annotations:
List
[
Global.AnnotationInfo
]
)
:
Unit
Definition Classes
BCAnnotGen
def
emitAnnotations
(
mw:
MethodVisitor
,
annotations:
List
[
Global.AnnotationInfo
]
)
:
Unit
Definition Classes
BCAnnotGen
def
emitAnnotations
(
cw:
ClassVisitor
,
annotations:
List
[
Global.AnnotationInfo
]
)
:
Unit
Definition Classes
BCAnnotGen
def
emitArgument
(
av:
AnnotationVisitor
,
name:
String
,
arg:
Global.ClassfileAnnotArg
)
:
Unit
Definition Classes
BCAnnotGen
def
emitAssocs
(
av:
AnnotationVisitor
,
assocs:
List
[(
Global.Name
,
Global.ClassfileAnnotArg
)]
)
:
Unit
Definition Classes
BCAnnotGen
val
emitLines
:
Boolean
Definition Classes
BCInnerClassGen
def
emitLocalVarScope
(
sym:
Global.Symbol
,
start:
Label
,
end:
Label
,
force:
Boolean
=
false
)
:
Unit
Definition Classes
PlainSkelBuilder
def
emitParamAnnotations
(
jmethod:
MethodVisitor
,
pannotss:
List
[
List
[
Global.AnnotationInfo
]]
)
:
Unit
Definition Classes
BCAnnotGen
val
emitSource
:
Boolean
Definition Classes
BCInnerClassGen
val
emitVars
:
Boolean
Definition Classes
BCInnerClassGen
def
emitZeroOf
(
tk:
BCodeBodyBuilder.BType
)
:
Unit
def
ensuring
(
cond: (
PlainBodyBuilder
) ⇒
Boolean
,
msg: ⇒
Any
)
:
PlainBodyBuilder
Implicit information
This member is added by an implicit conversion from
PlainBodyBuilder
to
Ensuring
[
PlainBodyBuilder
] performed by method Ensuring in scala.Predef.
Definition Classes
Ensuring
def
ensuring
(
cond: (
PlainBodyBuilder
) ⇒
Boolean
)
:
PlainBodyBuilder
Implicit information
This member is added by an implicit conversion from
PlainBodyBuilder
to
Ensuring
[
PlainBodyBuilder
] performed by method Ensuring in scala.Predef.
Definition Classes
Ensuring
def
ensuring
(
cond:
Boolean
,
msg: ⇒
Any
)
:
PlainBodyBuilder
Implicit information
This member is added by an implicit conversion from
PlainBodyBuilder
to
Ensuring
[
PlainBodyBuilder
] performed by method Ensuring in scala.Predef.
Definition Classes
Ensuring
def
ensuring
(
cond:
Boolean
)
:
PlainBodyBuilder
Implicit information
This member is added by an implicit conversion from
PlainBodyBuilder
to
Ensuring
[
PlainBodyBuilder
] performed by method Ensuring in scala.Predef.
Definition Classes
Ensuring
final
def
eq
(
arg0:
AnyRef
)
:
Boolean
Definition Classes
AnyRef
def
equals
(
arg0:
Any
)
:
Boolean
Definition Classes
AnyRef → Any
def
fieldLoad
(
field:
Global.Symbol
,
hostClass:
Global.Symbol
=
null
)
:
Unit
def
fieldStore
(
field:
Global.Symbol
,
hostClass:
Global.Symbol
=
null
)
:
Unit
def
finalize
()
:
Unit
Attributes
protected[
java.lang
]
Definition Classes
AnyRef
Annotations
@throws
(
classOf[java.lang.Throwable]
)
def
findHostClass
(
selector:
Global.Type
,
sym:
Global.Symbol
)
:
Global.Symbol
def
formatted
(
fmtstr:
String
)
:
String
Implicit information
This member is added by an implicit conversion from
PlainBodyBuilder
to
StringFormat
[
PlainBodyBuilder
] performed by method StringFormat in scala.Predef.
Definition Classes
StringFormat
Annotations
@inline
()
def
gen
(
tree:
Global.Tree
)
:
Unit
Definition Classes
PlainSkelBuilder
def
genArithmeticOp
(
tree:
Global.Tree
,
code:
Int
)
:
BCodeBodyBuilder.BType
def
genArrayOp
(
tree:
Global.Tree
,
code:
Int
,
expectedType:
BCodeBodyBuilder.BType
)
:
BCodeBodyBuilder.BType
def
genBlock
(
tree:
Global.Block
,
expectedType:
BCodeBodyBuilder.BType
)
:
Unit
def
genCallMethod
(
method:
Global.Symbol
,
style:
InvokeStyle
,
hostClass0:
Global.Symbol
=
null
,
pos:
Global.Position
=
NoPosition
)
:
Unit
def
genCast
(
to:
BCodeBodyBuilder.BType
,
cast:
Boolean
)
:
Unit
def
genCoercion
(
code:
Int
)
:
Unit
def
genConstant
(
const:
Global.Constant
)
:
Unit
def
genConversion
(
from:
BCodeBodyBuilder.BType
,
to:
BCodeBodyBuilder.BType
,
cast:
Boolean
)
:
Unit
def
genDefDef
(
dd:
Global.DefDef
)
:
Unit
Definition Classes
PlainSkelBuilder
def
genEqEqPrimitive
(
l:
Global.Tree
,
r:
Global.Tree
,
success:
Label
,
failure:
Label
)
:
Unit
def
genLoad
(
tree:
Global.Tree
,
expectedType:
BCodeBodyBuilder.BType
)
:
Unit
Definition Classes
PlainBodyBuilder
→
PlainSkelBuilder
def
genLoad
(
tree:
Global.Tree
)
:
Unit
def
genLoadArguments
(
args:
List
[
Global.Tree
]
,
btpes:
List
[
BCodeBodyBuilder.BType
]
)
:
Unit
def
genLoadIf
(
tree:
Global.If
,
expectedType:
BCodeBodyBuilder.BType
)
:
BCodeBodyBuilder.BType
def
genLoadLabelArguments
(
args:
List
[
Global.Tree
]
,
lblDef:
Global.LabelDef
,
gotoPos:
Global.Position
)
:
Unit
def
genLoadModule
(
module:
Global.Symbol
)
:
Unit
def
genLoadModule
(
tree:
Global.Tree
)
:
BCodeBodyBuilder.BType
def
genLoadQualifier
(
tree:
Global.Tree
)
:
Unit
def
genPlainClass
(
cd:
Global.ClassDef
)
:
Unit
Definition Classes
PlainSkelBuilder
def
genPrimitiveOp
(
tree:
Global.Apply
,
expectedType:
BCodeBodyBuilder.BType
)
:
BCodeBodyBuilder.BType
def
genScalaHash
(
tree:
Global.Tree
)
:
BCodeBodyBuilder.BType
def
genStat
(
tree:
Global.Tree
)
:
Unit
def
genStringConcat
(
tree:
Global.Tree
)
:
BCodeBodyBuilder.BType
def
genThrow
(
expr:
Global.Tree
)
:
BCodeBodyBuilder.BType
def
getAnnotPickle
(
jclassName:
String
,
sym:
Global.Symbol
)
:
Option
[
Global.AnnotationInfo
]
Definition Classes
BCPickles
final
def
getClass
()
:
Class
[_]
Definition Classes
AnyRef → Any
def
getCurrentCUnit
()
:
Global.CompilationUnit
Definition Classes
PlainSkelBuilder
→
BCJGenSigGen
def
getEnclosingMethodAttribute
(
clazz:
Global.Symbol
)
:
EnclMethodEntry
Definition Classes
BCClassGen
def
getExceptions
(
excs:
List
[
Global.AnnotationInfo
]
)
:
List
[
String
]
Definition Classes
BCForwardersGen
def
getGenericSignature
(
sym:
Global.Symbol
,
owner:
Global.Symbol
)
:
String
Definition Classes
BCJGenSigGen
def
hashCode
()
:
Int
Definition Classes
AnyRef → Any
def
ifOneIsNull
(
l:
Global.Tree
,
r:
Global.Tree
)
:
Global.Tree
def
initJMethod
(
flags:
Int
,
paramAnnotations:
List
[
List
[
Global.AnnotationInfo
]]
)
:
Unit
Definition Classes
PlainSkelBuilder
val
innerClassBufferASM
:
Set
[
BCodeBodyBuilder.BType
]
Definition Classes
BCInnerClassGen
var
insideCleanupBlock
:
Boolean
Definition Classes
PlainSkelBuilder
final
def
internalName
(
sym:
Global.Symbol
)
:
String
Definition Classes
BCInnerClassGen
def
isAndroidParcelableClass
(
sym:
Global.Symbol
)
:
Boolean
Definition Classes
JAndroidBuilder
def
isAtProgramPoint
(
lbl:
Label
)
:
Boolean
Definition Classes
PlainSkelBuilder
var
isCZParcelable
:
Boolean
Definition Classes
PlainSkelBuilder
var
isCZRemote
:
Boolean
Definition Classes
PlainSkelBuilder
var
isCZStaticModule
:
Boolean
Definition Classes
PlainSkelBuilder
final
def
isInstanceOf
[
T0
]
:
Boolean
Definition Classes
Any
var
isMethSymStaticCtor
:
Boolean
Definition Classes
PlainSkelBuilder
var
isModuleInitialized
:
Boolean
Definition Classes
PlainSkelBuilder
def
isNull
(
t:
Global.Tree
)
:
Boolean
def
isPrimitive
(
fun:
Global.Symbol
)
:
Boolean
var
jMethodName
:
String
Definition Classes
PlainSkelBuilder
var
jumpDest
:
Map
[
Global.Symbol
,
Label
]
Definition Classes
PlainSkelBuilder
var
labelDef
:
Map
[
Global.Symbol
,
Global.LabelDef
]
Definition Classes
PlainSkelBuilder
var
labelDefsAtOrUnder
:
Map
[
Global.Tree
,
List
[
Global.LabelDef
]]
Definition Classes
PlainSkelBuilder
var
lastEmittedLineNr
:
Int
Definition Classes
PlainSkelBuilder
def
lastInsn
:
AbstractInsnNode
Definition Classes
PlainSkelBuilder
def
legacyAddCreatorCode
(
clinit:
MethodVisitor
,
cnode:
ClassNode
,
thisName:
String
)
:
Unit
Definition Classes
JAndroidBuilder
def
liftStringConcat
(
tree:
Global.Tree
)
:
List
[
Global.Tree
]
def
lineNumber
(
tree:
Global.Tree
)
:
Unit
Definition Classes
PlainSkelBuilder
object
locals
Definition Classes
PlainSkelBuilder
def
log
(
msg: ⇒
AnyRef
)
:
Unit
Definition Classes
PlainSkelBuilder
def
markProgramPoint
(
lbl:
Label
)
:
Unit
Definition Classes
PlainSkelBuilder
var
methSymbol
:
Global.Symbol
Definition Classes
PlainSkelBuilder
var
mnode
:
MethodNode
Definition Classes
PlainSkelBuilder
final
def
ne
(
arg0:
AnyRef
)
:
Boolean
Definition Classes
AnyRef
final
def
notify
()
:
Unit
Definition Classes
AnyRef
final
def
notifyAll
()
:
Unit
Definition Classes
AnyRef
def
paramTKs
(
app:
Global.Apply
)
:
List
[
BCodeBodyBuilder.BType
]
Definition Classes
PlainSkelBuilder
def
pickleMarkerForeign
:
Attribute
Definition Classes
BCPickles
def
pickleMarkerLocal
:
Attribute
Definition Classes
BCPickles
def
programPoint
(
labelSym:
Global.Symbol
)
:
Label
Definition Classes
PlainSkelBuilder
def
registerCleanup
(
finCleanup:
Label
)
:
Unit
Definition Classes
PlainSkelBuilder
def
resetMethodBookkeeping
(
dd:
Global.DefDef
)
:
Unit
Definition Classes
PlainSkelBuilder
var
returnType
:
BCodeBodyBuilder.BType
Definition Classes
PlainSkelBuilder
def
serialVUID
(
csym:
Global.Symbol
)
:
Option
[
Long
]
Definition Classes
BCClassGen
var
shouldEmitCleanup
:
Boolean
Definition Classes
PlainSkelBuilder
def
symInfoTK
(
sym:
Global.Symbol
)
:
BCodeBodyBuilder.BType
Definition Classes
PlainSkelBuilder
final
def
synchronized
[
T0
]
(
arg0: ⇒
T0
)
:
T0
Definition Classes
AnyRef
val
testOpForPrimitive
:
Array
[
Global.icodes.TestOp
]
var
thisName
:
String
Definition Classes
PlainSkelBuilder
def
toString
()
:
String
Definition Classes
AnyRef → Any
final
def
toTypeKind
(
t:
Global.Type
)
:
BCodeBodyBuilder.BType
Definition Classes
BCInnerClassGen
def
tpeTK
(
tree:
Global.Tree
)
:
BCodeBodyBuilder.BType
Definition Classes
PlainSkelBuilder
final
def
trackMemberClasses
(
csym:
Global.Symbol
,
lateClosuresBTs:
List
[
BCodeBodyBuilder.BType
]
)
:
List
[
BCodeBodyBuilder.BType
]
Definition Classes
BCInnerClassGen
def
ubytesToCharArray
(
bytes:
Array
[
Byte
]
)
:
Array
[
Char
]
Definition Classes
BCAnnotGen
def
unregisterCleanup
(
finCleanup:
Label
)
:
Unit
Definition Classes
PlainSkelBuilder
var
varsInScope
:
List
[(
Global.Symbol
,
Label
)]
Definition Classes
PlainSkelBuilder
val
versionPickle
:
PickleBuffer
Definition Classes
BCPickles
final
def
wait
()
:
Unit
Definition Classes
AnyRef
Annotations
@throws
(
...
)
final
def
wait
(
arg0:
Long
,
arg1:
Int
)
:
Unit
Definition Classes
AnyRef
Annotations
@throws
(
...
)
final
def
wait
(
arg0:
Long
)
:
Unit
Definition Classes
AnyRef
Annotations
@throws
(
...
)
def
→
[
B
]
(
y:
B
)
: (
PlainBodyBuilder
,
B
)
Implicit information
This member is added by an implicit conversion from
PlainBodyBuilder
to
ArrowAssoc
[
PlainBodyBuilder
] performed by method ArrowAssoc in scala.Predef.
Definition Classes
ArrowAssoc
Inherited from
BCodeBodyBuilder.PlainSkelBuilder
Inherited from
BCodeBodyBuilder.BCPickles
Inherited from
BCodeBodyBuilder.BCForwardersGen
Inherited from
BCodeBodyBuilder.BCJGenSigGen
Inherited from
BCodeBodyBuilder.JAndroidBuilder
Inherited from
BCodeBodyBuilder.BCAnnotGen
Inherited from
BCodeBodyBuilder.BCClassGen
Inherited from
BCodeBodyBuilder.BCInnerClassGen
Inherited from
AnyRef
Inherited from
Any
Inherited by implicit conversion StringAdd from
PlainBodyBuilder
to
StringAdd
[
PlainBodyBuilder
]
Inherited by implicit conversion StringFormat from
PlainBodyBuilder
to
StringFormat
[
PlainBodyBuilder
]
Inherited by implicit conversion Ensuring from
PlainBodyBuilder
to
Ensuring
[
PlainBodyBuilder
]
Inherited by implicit conversion ArrowAssoc from
PlainBodyBuilder
to
ArrowAssoc
[
PlainBodyBuilder
]
Ungrouped