Class JumpInstruction
- java.lang.Object
-
- de.inetsoftware.jwebassembly.module.WasmInstruction
-
- de.inetsoftware.jwebassembly.module.JumpInstruction
-
class JumpInstruction extends WasmInstruction
Placeholder for a jump to inspect the stack. It is like a nop operation.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class de.inetsoftware.jwebassembly.module.WasmInstruction
WasmInstruction.Type
-
-
Field Summary
Fields Modifier and Type Field Description private int
jumpPos
private int
popCount
private AnyType
pushValueType
-
Constructor Summary
Constructors Constructor Description JumpInstruction(int jumpPos, int popCount, AnyType pushValueType, int javaCodePos, int lineNumber)
Create an instance of a nop instruction
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) int
getJumpPosition()
Get the jump position(package private) int
getPopCount()
Get the count of values that are removed from the stack.(package private) AnyType[]
getPopValueTypes()
(package private) AnyType
getPushValueType()
Get the ValueType if this instruction push a value on the stack.(package private) WasmInstruction.Type
getType()
Get the type of instructionvoid
writeTo(ModuleWriter writer)
Write this instruction to the WASM module.-
Methods inherited from class de.inetsoftware.jwebassembly.module.WasmInstruction
getCodePosition, getLineNumber, setCodePosition
-
-
-
-
Field Detail
-
jumpPos
private int jumpPos
-
popCount
private int popCount
-
pushValueType
private AnyType pushValueType
-
-
Constructor Detail
-
JumpInstruction
JumpInstruction(int jumpPos, int popCount, AnyType pushValueType, int javaCodePos, int lineNumber)
Create an instance of a nop instruction- Parameters:
jumpPos
- the position of the jumppopCount
- the the count of values that are removed from the stack.pushValueType
- optional type of a push valuejavaCodePos
- the code position/offset in the Java methodlineNumber
- the line number in the Java source code
-
-
Method Detail
-
getType
WasmInstruction.Type getType()
Get the type of instruction- Specified by:
getType
in classWasmInstruction
- Returns:
- the type
-
writeTo
public void writeTo(@Nonnull ModuleWriter writer) throws java.io.IOException
Write this instruction to the WASM module.- Specified by:
writeTo
in classWasmInstruction
- Parameters:
writer
- the target writer- Throws:
java.io.IOException
- if any I/O error occur
-
getPushValueType
AnyType getPushValueType()
Get the ValueType if this instruction push a value on the stack.- Specified by:
getPushValueType
in classWasmInstruction
- Returns:
- the ValueType or null if no value is push
-
getPopCount
int getPopCount()
Get the count of values that are removed from the stack.- Specified by:
getPopCount
in classWasmInstruction
- Returns:
- the count
-
getJumpPosition
int getJumpPosition()
Get the jump position- Returns:
- the position
-
getPopValueTypes
AnyType[] getPopValueTypes()
- Specified by:
getPopValueTypes
in classWasmInstruction
-
-