Class OperandStack
java.lang.Object
xyz.janboerman.scalaloader.bytecode.OperandStack
This class is NOT part of the public API!
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionObject[]
frame()
List
<org.objectweb.asm.Type> int
maxStack()
The largest size (as determined bystackSize()
) that this stack has been in its lifetime.int
Get the number of operands on the stack.org.objectweb.asm.Type
pop()
void
pop
(int amount) void
push
(org.objectweb.asm.Type type) void
push
(org.objectweb.asm.Type... types) void
replaceTop
(int popAmount, org.objectweb.asm.Type type) org.objectweb.asm.Type
replaceTop
(org.objectweb.asm.Type type) int
Get the size of the stack.toString()
-
Constructor Details
-
OperandStack
public OperandStack()
-
-
Method Details
-
push
public void push(org.objectweb.asm.Type type) -
push
public void push(org.objectweb.asm.Type... types) -
replaceTop
public org.objectweb.asm.Type replaceTop(org.objectweb.asm.Type type) -
replaceTop
public void replaceTop(int popAmount, org.objectweb.asm.Type type) -
pop
public org.objectweb.asm.Type pop() -
pop
public void pop(int amount) -
stackSize
public int stackSize()Get the size of the stack. This method takes "type categories" into account, so longs and doubles count as 2.- Returns:
- the stack size
-
operandsSize
public int operandsSize()Get the number of operands on the stack. This method does not take "type categories" into account, so every item counts as 1.- Returns:
- the number of operands
-
maxStack
public int maxStack()The largest size (as determined bystackSize()
) that this stack has been in its lifetime.- Returns:
- the maximum stack size
-
getOperands
-
frame
-
toString
-