Class WasmBlockInstruction


  • class WasmBlockInstruction
    extends WasmInstruction
    WasmInstruction for block operation.
    • Constructor Detail

      • WasmBlockInstruction

        WasmBlockInstruction​(@Nonnull
                             WasmBlockOperator op,
                             @Nullable
                             java.lang.Object data,
                             int javaCodePos,
                             int lineNumber)
        Create an instance of block operation.
        Parameters:
        op - the operation
        data - extra data depending of the operator
        javaCodePos - the code position/offset in the Java method
        lineNumber - the line number in the Java source code
    • Method Detail

      • getData

        java.lang.Object getData()
        Get the current data vale of the instruction
        Returns:
        the value
      • setData

        void setData​(java.lang.Object data)
        Set a new value for the data
        Parameters:
        data - the new value
      • writeTo

        public void writeTo​(@Nonnull
                            ModuleWriter writer)
                     throws java.io.IOException
        Write this instruction to the WASM module.
        Specified by:
        writeTo in class WasmInstruction
        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 class WasmInstruction
        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 class WasmInstruction
        Returns:
        the count