ClassfileConstants

class Object
trait Matchable
class Any

Type members

Classlikes

abstract class FlagTranslation

Value members

Concrete fields

inline val ANNOTATION_TAG: '@'
inline val ARRAY_TAG: '['
inline val BOOL_TAG: 'Z'
inline val BYTE_TAG: 'B'
inline val CHAR_TAG: 'C'
inline val CLASS_TAG: 'c'
inline val CONSTANT_CLASS: 7
inline val CONSTANT_DOUBLE: 6
inline val CONSTANT_FIELDREF: 9
inline val CONSTANT_FLOAT: 4
inline val CONSTANT_INTEGER: 3
inline val CONSTANT_INTFMETHODREF: 11
inline val CONSTANT_INVOKEDYNAMIC: 18
inline val CONSTANT_LONG: 5
inline val CONSTANT_METHODHANDLE: 15
inline val CONSTANT_METHODREF: 10
inline val CONSTANT_METHODTYPE: 16
inline val CONSTANT_NAMEANDTYPE: 12
inline val CONSTANT_STRING: 8
inline val CONSTANT_UNICODE: 2
inline val CONSTANT_UTF8: 1
inline val DOUBLE_TAG: 'D'
inline val ENUM_TAG: 'e'
inline val FLOAT_TAG: 'F'
inline val INT_TAG: 'I'
inline val JAVA8_MAJOR_VERSION: 52
inline val JAVA_ACC_ABSTRACT: 1024
inline val JAVA_ACC_ANNOTATION: 8192
inline val JAVA_ACC_BRIDGE: 64
inline val JAVA_ACC_ENUM: 16384
inline val JAVA_ACC_FINAL: 16
inline val JAVA_ACC_INTERFACE: 512
inline val JAVA_ACC_NATIVE: 256
inline val JAVA_ACC_PRIVATE: 2
inline val JAVA_ACC_PROTECTED: 4
inline val JAVA_ACC_PUBLIC: 1

(see http://java.sun.com/docs/books/jvms/second_edition/jvms-clarify.html)

(see http://java.sun.com/docs/books/jvms/second_edition/jvms-clarify.html)

If the ACC_INTERFACE flag is set, the ACC_ABSTRACT flag must also be set (ch. 2.13.1).

A class file cannot have both its ACC_FINAL and ACC_ABSTRACT flags set (ch. 2.8.2).

A field may have at most one of its ACC_PRIVATE, ACC_PROTECTED, ACC_PUBLIC flags set (ch. 2.7.4).

A field may not have both its ACC_FINAL and ACC_VOLATILE flags set (ch. 2.9.1).

If a method has its ACC_ABSTRACT flag set it must not have any of its ACC_FINAL, ACC_NATIVE, ACC_PRIVATE, ACC_STATIC, ACC_STRICT, or ACC_SYNCHRONIZED flags set (ch. 2.13.3.2).

All interface methods must have their ACC_ABSTRACT and ACC_PUBLIC flags set.

Note for future reference: see this thread on ACC_SUPER and how its enforcement differs on the android vm. https://groups.google.com/forum/?hl=en#!topic/jvm-languages/jVhzvq8-ZIk

inline val JAVA_ACC_STATIC: 8
inline val JAVA_ACC_STRICT: 2048
inline val JAVA_ACC_SUPER: 32
inline val JAVA_ACC_SYNCHRONIZED: 32
inline val JAVA_ACC_SYNTHETIC: 4096
inline val JAVA_ACC_TRANSIENT: 128
inline val JAVA_ACC_VARARGS: 128
inline val JAVA_ACC_VOLATILE: 64
inline val JAVA_MAGIC: -889275714
inline val JAVA_MAJOR_VERSION: 45
inline val JAVA_MINOR_VERSION: 3
inline val LONG_TAG: 'J'
inline val OBJECT_TAG: 'L'
inline val SCALA_NOTHING: "scala.runtime.Nothing$"
inline val SCALA_NULL: "scala.runtime.Null$"
inline val SHORT_TAG: 'S'
inline val STRING_TAG: 's'
inline val TVAR_TAG: 'T'
inline val T_BOOLEAN: 4
inline val T_BYTE: 8
inline val T_CHAR: 5
inline val T_DOUBLE: 7
inline val T_FLOAT: 6
inline val T_INT: 10
inline val T_LONG: 11
inline val T_SHORT: 9
inline val VOID_TAG: 'V'
inline val aaload: 50
inline val aastore: 83
inline val aconst_null: 1
inline val aload: 25
inline val aload_0: 42
inline val aload_1: 43
inline val aload_2: 44
inline val aload_3: 45
inline val anewarray: 189
inline val areturn: 176
inline val arraylength: 190
inline val astore: 58
inline val astore_0: 75
inline val astore_1: 76
inline val astore_2: 77
inline val astore_3: 78
inline val athrow: 191
inline val baload: 51
inline val bastore: 84
inline val bipush: 16
inline val breakpoint: 202
inline val caload: 52
inline val castore: 85
inline val checkcast: 192
inline val d2f: 144
inline val d2i: 142
inline val d2l: 143
inline val dadd: 99
inline val daload: 49
inline val dastore: 82
inline val dcmpg: 152
inline val dcmpl: 151
inline val dconst_0: 14
inline val dconst_1: 15
inline val ddiv: 111
inline val dload: 24
inline val dload_0: 38
inline val dload_1: 39
inline val dload_2: 40
inline val dload_3: 41
inline val dmul: 107
inline val dneg: 119
inline val drem: 115
inline val dreturn: 175
inline val dstore: 57
inline val dstore_0: 71
inline val dstore_1: 72
inline val dstore_2: 73
inline val dstore_3: 74
inline val dsub: 103
inline val dup: 89
inline val dup2: 92
inline val dup2_x1: 93
inline val dup2_x2: 94
inline val dup_x1: 90
inline val dup_x2: 91
inline val f2d: 141
inline val f2i: 139
inline val f2l: 140
inline val fadd: 98
inline val faload: 48
inline val fastore: 81
inline val fcmpg: 150
inline val fcmpl: 149
inline val fconst_0: 11
inline val fconst_1: 12
inline val fconst_2: 13
inline val fdiv: 110
inline val fload: 23
inline val fload_0: 34
inline val fload_1: 35
inline val fload_2: 36
inline val fload_3: 37
inline val fmul: 106
inline val fneg: 118
inline val frem: 114
inline val freturn: 174
inline val fstore: 56
inline val fstore_0: 67
inline val fstore_1: 68
inline val fstore_2: 69
inline val fstore_3: 70
inline val fsub: 102
inline val getfield: 180
inline val getstatic: 178
inline val goto: 167
inline val goto_w: 200
inline val i2b: 145
inline val i2c: 146
inline val i2d: 135
inline val i2f: 134
inline val i2l: 133
inline val i2s: 147
inline val iadd: 96
inline val iaload: 46
inline val iand: 126
inline val iastore: 79
inline val iconst_0: 3
inline val iconst_1: 4
inline val iconst_2: 5
inline val iconst_3: 6
inline val iconst_4: 7
inline val iconst_5: 8
inline val iconst_m1: 2
inline val idiv: 108
inline val if_acmpeq: 165
inline val if_acmpne: 166
inline val if_icmpeq: 159
inline val if_icmpge: 162
inline val if_icmpgt: 163
inline val if_icmple: 164
inline val if_icmplt: 161
inline val if_icmpne: 160
inline val ifeq: 153
inline val ifge: 156
inline val ifgt: 157
inline val ifle: 158
inline val iflt: 155
inline val ifne: 154
inline val ifnonnull: 199
inline val ifnull: 198
inline val iinc: 132
inline val iload: 21
inline val iload_0: 26
inline val iload_1: 27
inline val iload_2: 28
inline val iload_3: 29
inline val impdep1: 254
inline val impdep2: 255
inline val imul: 104
inline val ineg: 116
inline val instanceof: 193
inline val invokeinterface: 185
inline val invokespecial: 183
inline val invokestatic: 184
inline val invokevirtual: 182
inline val ior: 128
inline val irem: 112
inline val ireturn: 172
inline val ishl: 120
inline val ishr: 122
inline val istore: 54
inline val istore_0: 59
inline val istore_1: 60
inline val istore_2: 61
inline val istore_3: 62
inline val isub: 100
inline val iushr: 124
inline val ixor: 130
inline val jsr: 168
inline val jsr_w: 201
inline val l2d: 138
inline val l2f: 137
inline val l2i: 136
inline val ladd: 97
inline val laload: 47
inline val land: 127
inline val lastore: 80
inline val lcmp: 148
inline val lconst_0: 9
inline val lconst_1: 10
inline val ldc: 18
inline val ldc2_w: 20
inline val ldc_w: 19
inline val ldiv: 109
inline val lload: 22
inline val lload_0: 30
inline val lload_1: 31
inline val lload_2: 32
inline val lload_3: 33
inline val lmul: 105
inline val lneg: 117
inline val lookupswitch: 171
inline val lor: 129
inline val lrem: 113
inline val lreturn: 173
inline val lshl: 121
inline val lshr: 123
inline val lstore: 55
inline val lstore_0: 63
inline val lstore_1: 64
inline val lstore_2: 65
inline val lstore_3: 66
inline val lsub: 101
inline val lushr: 125
inline val lxor: 131
inline val monitorenter: 194
inline val monitorexit: 195
inline val multianewarray: 197
inline val new_: 187
inline val newarray: 188
inline val nop: 0
inline val pop: 87
inline val pop2: 88
inline val putfield: 181
inline val putstatic: 179
inline val ret: 169
inline val return_: 177
inline val saload: 53
inline val sastore: 86
inline val sipush: 17
inline val swap: 95
inline val tableswitch: 170
inline val wide: 196
inline val xxxunusedxxxx: 186