Package org.aspectj.apache.bcel.generic
Interface InstructionConstants
- All Known Implementing Classes:
InstructionFactory
public interface InstructionConstants
This interface contains shareable instruction objects.
In order to save memory you can use some instructions multiply,
since they have an immutable state and are directly derived from
Instruction. I.e. they have no instance fields that could be
changed. Since some of these instructions like ICONST_0 occur
very frequently this can save a lot of time and space. This
feature is an adaptation of the FlyWeight design pattern, we
just use an array instead of a factory.
The Instructions can also accessed directly under their names, so
it's possible to write il.append(Instruction.ICONST_0);
- Version:
- $Id: InstructionConstants.java,v 1.4 2008/08/13 18:18:22 aclement Exp $
- Author:
- M. Dahm
-
Nested Class Summary
-
Field Summary
Modifier and TypeFieldDescriptionstatic final Instruction
static final Instruction
static final Instruction
static final InstructionLV
static final InstructionLV
static final InstructionLV
static final InstructionLV
static final Instruction
static final Instruction
static final InstructionLV
static final InstructionLV
static final InstructionLV
static final InstructionLV
static final Instruction
static final Instruction
static final Instruction
static final InstructionConstants.Clinit
Interfaces may have no static initializers, so we simulate this with an inner class.static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final InstructionLV
static final InstructionLV
static final InstructionLV
static final InstructionLV
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final InstructionLV
static final InstructionLV
static final InstructionLV
static final InstructionLV
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final InstructionLV
static final InstructionLV
static final InstructionLV
static final InstructionLV
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final InstructionLV
static final InstructionLV
static final InstructionLV
static final InstructionLV
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final InstructionLV
static final InstructionLV
static final InstructionLV
static final InstructionLV
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction[]
Get object via its opcode, for immutable instructions like branch instructions entries are set to null.static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final InstructionLV
static final InstructionLV
static final InstructionLV
static final InstructionLV
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final InstructionLV
static final InstructionLV
static final InstructionLV
static final InstructionLV
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final InstructionLV
static final InstructionLV
static final InstructionLV
static final InstructionLV
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
Predefined instruction objectsstatic final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final Instruction
static final InstructionLV
-
Field Details
-
NOP
Predefined instruction objects -
ACONST_NULL
-
ICONST_M1
-
ICONST_0
-
ICONST_1
-
ICONST_2
-
ICONST_3
-
ICONST_4
-
ICONST_5
-
LCONST_0
-
LCONST_1
-
FCONST_0
-
FCONST_1
-
FCONST_2
-
DCONST_0
-
DCONST_1
-
IALOAD
-
LALOAD
-
FALOAD
-
DALOAD
-
AALOAD
-
BALOAD
-
CALOAD
-
SALOAD
-
IASTORE
-
LASTORE
-
FASTORE
-
DASTORE
-
AASTORE
-
BASTORE
-
CASTORE
-
SASTORE
-
POP
-
POP2
-
DUP
-
DUP_X1
-
DUP_X2
-
DUP2
-
DUP2_X1
-
DUP2_X2
-
SWAP
-
IADD
-
LADD
-
FADD
-
DADD
-
ISUB
-
LSUB
-
FSUB
-
DSUB
-
IMUL
-
LMUL
-
FMUL
-
DMUL
-
IDIV
-
LDIV
-
FDIV
-
DDIV
-
IREM
-
LREM
-
FREM
-
DREM
-
INEG
-
LNEG
-
FNEG
-
DNEG
-
ISHL
-
LSHL
-
ISHR
-
LSHR
-
IUSHR
-
LUSHR
-
IAND
-
LAND
-
IOR
-
LOR
-
IXOR
-
LXOR
-
I2L
-
I2F
-
I2D
-
L2I
-
L2F
-
L2D
-
F2I
-
F2L
-
F2D
-
D2I
-
D2L
-
D2F
-
I2B
-
I2C
-
I2S
-
LCMP
-
FCMPL
-
FCMPG
-
DCMPL
-
DCMPG
-
IRETURN
-
LRETURN
-
FRETURN
-
DRETURN
-
ARETURN
-
RETURN
-
ARRAYLENGTH
-
ATHROW
-
MONITORENTER
-
MONITOREXIT
-
IMPDEP1
-
IMPDEP2
-
THIS
-
ALOAD_0
-
ALOAD_1
-
ALOAD_2
-
ALOAD_3
-
ILOAD_0
-
ILOAD_1
-
ILOAD_2
-
ILOAD_3
-
DLOAD_0
-
DLOAD_1
-
DLOAD_2
-
DLOAD_3
-
FLOAD_0
-
FLOAD_1
-
FLOAD_2
-
FLOAD_3
-
LLOAD_0
-
LLOAD_1
-
LLOAD_2
-
LLOAD_3
-
ASTORE_0
-
ASTORE_1
-
ASTORE_2
-
ASTORE_3
-
ISTORE_0
-
ISTORE_1
-
ISTORE_2
-
ISTORE_3
-
LSTORE_0
-
LSTORE_1
-
LSTORE_2
-
LSTORE_3
-
FSTORE_0
-
FSTORE_1
-
FSTORE_2
-
FSTORE_3
-
DSTORE_0
-
DSTORE_1
-
DSTORE_2
-
DSTORE_3
-
INSTRUCTIONS
Get object via its opcode, for immutable instructions like branch instructions entries are set to null. -
bla
Interfaces may have no static initializers, so we simulate this with an inner class.
-