Top Description Inners Fields Constructors Methods
net.bytebuddy.implementation.bytecode

public final Enum ShiftRight

extends Enum<ShiftRight>
implements StackManipulation
Class Inheritance
All Implemented Interfaces
net.bytebuddy.implementation.bytecode.StackManipulation
Imports
net.bytebuddy.implementation.Implementation, net.bytebuddy.jar.asm.MethodVisitor, .Opcodes

A stack manipulation that shifts right two numbers on the operand stack.

Nested and Inner Type Summary

Modifier and TypeClass and Description
protected static enum
ShiftRight.Unsigned

A stack manipulation that shifts right unsigned two numbers on the operand stack.

Field Summary

Modifier and TypeField and Description
public static final ShiftRight
INTEGER

Shifts right two integers or integer-compatible values.

public static final ShiftRight
LONG

Shifts right two longs.

private final int
opcode

The opcode to apply.

private final StackSize
stackSize

The stack size of the shift right primitive.

private final StackManipulation
unsigned

The unsigned equivalent of this operation.

Constructor Summary

AccessConstructor and Description
private
ShiftRight(int
The opcode to apply.
opcode
,
StackSize
The stack size of the shift right primitive.
stackSize
,
StackManipulation
The unsigned equivalent of this operation.
unsigned
)

Creates a new shift right.

Method Summary

Modifier and TypeMethod and Description
public StackManipulation.Size
apply(MethodVisitor
The method visitor used to write the method implementation to.
methodVisitor
,
Implementation.Context
The context of the current implementation.
implementationContext
)

Implements net.bytebuddy.implementation.bytecode.StackManipulation.apply.

Applies the stack manipulation that is described by this instance.
public boolean
isValid()

Implements net.bytebuddy.implementation.bytecode.StackManipulation.isValid.

Determines if this stack manipulation is valid.
public StackManipulation

Returns:

The unsigned equivalent of this operation.
toUnsigned
()

Returns the unsigned equivalent of this operation.

public static ShiftRight
public static ShiftRight[]
Inherited from java.lang.Enum:
clonecompareTodescribeConstableequalsfinalizegetDeclaringClasshashCodenameordinaltoStringvalueOf

Field Detail

INTEGERback to summary
public static final ShiftRight INTEGER

Shifts right two integers or integer-compatible values.

LONGback to summary
public static final ShiftRight LONG

Shifts right two longs.

opcodeback to summary
private final int opcode

The opcode to apply.

stackSizeback to summary
private final StackSize stackSize

The stack size of the shift right primitive.

unsignedback to summary
private final StackManipulation unsigned

The unsigned equivalent of this operation.

Constructor Detail

ShiftRightback to summary
private ShiftRight(int opcode, StackSize stackSize, StackManipulation unsigned)

Creates a new shift right.

Parameters
opcode:int

The opcode to apply.

stackSize:StackSize

The stack size of the shift right primitive.

unsigned:StackManipulation

The unsigned equivalent of this operation.

Method Detail

applyback to summary
public StackManipulation.Size apply(MethodVisitor methodVisitor, Implementation.Context implementationContext)

Implements net.bytebuddy.implementation.bytecode.StackManipulation.apply.

Doc from net.bytebuddy.implementation.bytecode.StackManipulation.apply.

Applies the stack manipulation that is described by this instance.

Parameters
methodVisitor:MethodVisitor

The method visitor used to write the method implementation to.

implementationContext:Implementation.Context

The context of the current implementation.

Returns:StackManipulation.Size

The changes to the size of the operand stack that are implied by this stack manipulation.

isValidback to summary
public boolean isValid()

Implements net.bytebuddy.implementation.bytecode.StackManipulation.isValid.

Doc from net.bytebuddy.implementation.bytecode.StackManipulation.isValid.

Determines if this stack manipulation is valid.

Returns:boolean

If false, this manipulation cannot be applied and should throw an exception.

toUnsignedback to summary
public StackManipulation toUnsigned()

Returns the unsigned equivalent of this operation.

Returns:StackManipulation

The unsigned equivalent of this operation.

valueOfback to summary
public static ShiftRight valueOf(String name)
valuesback to summary
public static ShiftRight[] values()
net.bytebuddy.implementation.bytecode back to summary

protected final Enum ShiftRight.Unsigned

extends Enum<ShiftRight.Unsigned>
implements StackManipulation
Class Inheritance
All Implemented Interfaces
net.bytebuddy.implementation.bytecode.StackManipulation

A stack manipulation that shifts right unsigned two numbers on the operand stack.

Field Summary

Modifier and TypeField and Description
public static final ShiftRight.Unsigned
INTEGER

Shifts right unsigned two integers or integer-compatible values.

public static final ShiftRight.Unsigned
LONG

Shifts right unsigned two longs.

private final int
opcode

The opcode to apply.

private final StackSize
stackSize

The stack size of the shift right unsigned primitive.

Constructor Summary

AccessConstructor and Description
private
Unsigned(int
The opcode to apply.
opcode
,
StackSize
The stack size of the shift right unsigned primitive.
stackSize
)

Creates a new shift right unsigned.

Method Summary

Modifier and TypeMethod and Description
public StackManipulation.Size
apply(MethodVisitor
The method visitor used to write the method implementation to.
methodVisitor
,
Implementation.Context
The context of the current implementation.
implementationContext
)

Implements net.bytebuddy.implementation.bytecode.StackManipulation.apply.

Applies the stack manipulation that is described by this instance.
public boolean
isValid()

Implements net.bytebuddy.implementation.bytecode.StackManipulation.isValid.

Determines if this stack manipulation is valid.
public static ShiftRight.Unsigned
public static ShiftRight.Unsigned[]
Inherited from java.lang.Enum:
clonecompareTodescribeConstableequalsfinalizegetDeclaringClasshashCodenameordinaltoStringvalueOf

Field Detail

INTEGERback to summary
public static final ShiftRight.Unsigned INTEGER

Shifts right unsigned two integers or integer-compatible values.

LONGback to summary
public static final ShiftRight.Unsigned LONG

Shifts right unsigned two longs.

opcodeback to summary
private final int opcode

The opcode to apply.

stackSizeback to summary
private final StackSize stackSize

The stack size of the shift right unsigned primitive.

Constructor Detail

Unsignedback to summary
private Unsigned(int opcode, StackSize stackSize)

Creates a new shift right unsigned.

Parameters
opcode:int

The opcode to apply.

stackSize:StackSize

The stack size of the shift right unsigned primitive.

Method Detail

applyback to summary
public StackManipulation.Size apply(MethodVisitor methodVisitor, Implementation.Context implementationContext)

Implements net.bytebuddy.implementation.bytecode.StackManipulation.apply.

Doc from net.bytebuddy.implementation.bytecode.StackManipulation.apply.

Applies the stack manipulation that is described by this instance.

Parameters
methodVisitor:MethodVisitor

The method visitor used to write the method implementation to.

implementationContext:Implementation.Context

The context of the current implementation.

Returns:StackManipulation.Size

The changes to the size of the operand stack that are implied by this stack manipulation.

isValidback to summary
public boolean isValid()

Implements net.bytebuddy.implementation.bytecode.StackManipulation.isValid.

Doc from net.bytebuddy.implementation.bytecode.StackManipulation.isValid.

Determines if this stack manipulation is valid.

Returns:boolean

If false, this manipulation cannot be applied and should throw an exception.

valueOfback to summary
public static ShiftRight.Unsigned valueOf(String name)
valuesback to summary
public static ShiftRight.Unsigned[] values()