Class WasmGlobalInstruction
- java.lang.Object
-
- de.inetsoftware.jwebassembly.module.WasmInstruction
-
- de.inetsoftware.jwebassembly.module.WasmGlobalInstruction
-
class WasmGlobalInstruction extends WasmInstruction
WasmInstruction for set and get global variables.
-
-
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 FunctionNameclinitprivate booleanloadprivate FunctionNamenameprivate AnyTypetype
-
Constructor Summary
Constructors Constructor Description WasmGlobalInstruction(boolean load, FunctionName name, AnyType type, FunctionName clinit, int javaCodePos, int lineNumber)Create an instance of a load/store instruction
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) FunctionNamegetFieldName()The name of the field(package private) intgetPopCount()Get the count of values that are removed from the stack.(package private) AnyType[]getPopValueTypes()(package private) AnyTypegetPushValueType()Get the ValueType if this instruction push a value on the stack.(package private) WasmInstruction.TypegetType()Get the type of instructionvoidwriteTo(ModuleWriter writer)Write this instruction to the WASM module.-
Methods inherited from class de.inetsoftware.jwebassembly.module.WasmInstruction
getCodePosition, getLineNumber, setCodePosition
-
-
-
-
Field Detail
-
load
private boolean load
-
name
private FunctionName name
-
type
private AnyType type
-
clinit
private FunctionName clinit
-
-
Constructor Detail
-
WasmGlobalInstruction
WasmGlobalInstruction(boolean load, @Nonnull FunctionName name, AnyType type, @Nullable FunctionName clinit, int javaCodePos, int lineNumber)Create an instance of a load/store instruction- Parameters:
load- true: if load or GETname- the name of the static fieldtype- the type of the static fieldclinit- a reference to the class/static constructor which should executed before access a static fieldjavaCodePos- 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:
getTypein classWasmInstruction- Returns:
- the type
-
getFieldName
@Nonnull FunctionName getFieldName()
The name of the field- Returns:
- the field
-
writeTo
public void writeTo(@Nonnull ModuleWriter writer) throws java.io.IOExceptionWrite this instruction to the WASM module.- Specified by:
writeToin 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:
getPushValueTypein 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:
getPopCountin classWasmInstruction- Returns:
- the count
-
getPopValueTypes
AnyType[] getPopValueTypes()
- Specified by:
getPopValueTypesin classWasmInstruction
-
-