protected static enum Duplication.WithFlip extends java.lang.Enum<Duplication.WithFlip> implements StackManipulation
StackManipulation.Compound, StackManipulation.Illegal, StackManipulation.Size, StackManipulation.Trivial| Enum Constant and Description |
|---|
DOUBLE_DOUBLE
A flip instruction that flips a double-sized element over another double-size element.
|
DOUBLE_SINGLE
A flip instruction that flips a single-sized element over a double-size element.
|
SINGLE_DOUBLE
A flip instruction that flips a double-sized element over a single-size element.
|
SINGLE_SINGLE
A flip instruction that flips a single-sized element over another single-size element.
|
| Modifier and Type | Field and Description |
|---|---|
private int |
opcode
The opcode to apply.
|
private StackSize |
stackSize
The size that is added to the operand stack.
|
| Modifier and Type | Method and Description |
|---|---|
StackManipulation.Size |
apply(org.objectweb.asm.MethodVisitor methodVisitor,
Implementation.Context implementationContext)
Applies the stack manipulation that is described by this instance.
|
boolean |
isValid()
Determines if this stack manipulation is valid.
|
static Duplication.WithFlip |
valueOf(java.lang.String name)
Returns the enum constant of this type with the specified name.
|
static Duplication.WithFlip[] |
values()
Returns an array containing the constants of this enum type, in
the order they are declared.
|
public static final Duplication.WithFlip SINGLE_SINGLE
public static final Duplication.WithFlip SINGLE_DOUBLE
public static final Duplication.WithFlip DOUBLE_SINGLE
public static final Duplication.WithFlip DOUBLE_DOUBLE
private final int opcode
private final StackSize stackSize
public static Duplication.WithFlip[] values()
for (Duplication.WithFlip c : Duplication.WithFlip.values()) System.out.println(c);
public static Duplication.WithFlip valueOf(java.lang.String name)
name - the name of the enum constant to be returned.java.lang.IllegalArgumentException - if this enum type has no constant with the specified namejava.lang.NullPointerException - if the argument is nullpublic boolean isValid()
isValid in interface StackManipulationfalse, this manipulation cannot be applied and should throw an exception.public StackManipulation.Size apply(org.objectweb.asm.MethodVisitor methodVisitor, Implementation.Context implementationContext)
apply in interface StackManipulationmethodVisitor - The method visitor used to write the method implementation to.implementationContext - The context of the current implementation.