Versions in this module Expand all Collapse all v0 v0.0.2 Sep 3, 2024 v0.0.1 Sep 2, 2024 Changes in this version + const OPCODE_COUNT + const OpcodeAtomicFence + const OpcodeAtomicNotify + const OpcodeBlock + const OpcodeBr + const OpcodeBrIf + const OpcodeBrTable + const OpcodeCall + const OpcodeCallIndirect + const OpcodeDataDrop + const OpcodeDrop + const OpcodeElemDrop + const OpcodeElse + const OpcodeEnd + const OpcodeF32Abs + const OpcodeF32Add + const OpcodeF32Ceil + const OpcodeF32Const + const OpcodeF32ConvertI32S + const OpcodeF32ConvertI32U + const OpcodeF32ConvertI64S + const OpcodeF32ConvertI64U + const OpcodeF32Copysign + const OpcodeF32DemoteF64 + const OpcodeF32Div + const OpcodeF32Eq + const OpcodeF32Floor + const OpcodeF32Ge + const OpcodeF32Gt + const OpcodeF32Le + const OpcodeF32Load + const OpcodeF32Lt + const OpcodeF32Max + const OpcodeF32Min + const OpcodeF32Mul + const OpcodeF32Ne + const OpcodeF32Nearest + const OpcodeF32Neg + const OpcodeF32ReinterpretI32 + const OpcodeF32Sqrt + const OpcodeF32Store + const OpcodeF32Sub + const OpcodeF32Trunc + const OpcodeF32x4Abs + const OpcodeF32x4Add + const OpcodeF32x4ConvertI32x4S + const OpcodeF32x4ConvertI32x4U + const OpcodeF32x4Div + const OpcodeF32x4Eq + const OpcodeF32x4ExtractLane + const OpcodeF32x4Ge + const OpcodeF32x4Gt + const OpcodeF32x4Le + const OpcodeF32x4Lt + const OpcodeF32x4Max + const OpcodeF32x4Min + const OpcodeF32x4Mul + const OpcodeF32x4Ne + const OpcodeF32x4Neg + const OpcodeF32x4ReplaceLane + const OpcodeF32x4Splat + const OpcodeF32x4Sqrt + const OpcodeF32x4Sub + const OpcodeF64Abs + const OpcodeF64Add + const OpcodeF64Ceil + const OpcodeF64Const + const OpcodeF64ConvertI32S + const OpcodeF64ConvertI32U + const OpcodeF64ConvertI64S + const OpcodeF64ConvertI64U + const OpcodeF64Copysign + const OpcodeF64Div + const OpcodeF64Eq + const OpcodeF64Floor + const OpcodeF64Ge + const OpcodeF64Gt + const OpcodeF64Le + const OpcodeF64Load + const OpcodeF64Lt + const OpcodeF64Max + const OpcodeF64Min + const OpcodeF64Mul + const OpcodeF64Ne + const OpcodeF64Nearest + const OpcodeF64Neg + const OpcodeF64PromoteF32 + const OpcodeF64ReinterpretI64 + const OpcodeF64Sqrt + const OpcodeF64Store + const OpcodeF64Sub + const OpcodeF64Trunc + const OpcodeF64x2Abs + const OpcodeF64x2Add + const OpcodeF64x2ConvertI64x2S + const OpcodeF64x2ConvertI64x2U + const OpcodeF64x2Div + const OpcodeF64x2Eq + const OpcodeF64x2ExtractLane + const OpcodeF64x2Ge + const OpcodeF64x2Gt + const OpcodeF64x2Le + const OpcodeF64x2Lt + const OpcodeF64x2Max + const OpcodeF64x2Min + const OpcodeF64x2Mul + const OpcodeF64x2Ne + const OpcodeF64x2Neg + const OpcodeF64x2ReplaceLane + const OpcodeF64x2Splat + const OpcodeF64x2Sqrt + const OpcodeF64x2Sub + const OpcodeGlobalGet + const OpcodeGlobalSet + const OpcodeI16x8Add + const OpcodeI16x8AddSaturateS + const OpcodeI16x8AddSaturateU + const OpcodeI16x8AllTrue + const OpcodeI16x8AnyTrue + const OpcodeI16x8Eq + const OpcodeI16x8ExtractLaneS + const OpcodeI16x8ExtractLaneU + const OpcodeI16x8GeS + const OpcodeI16x8GeU + const OpcodeI16x8GtS + const OpcodeI16x8GtU + const OpcodeI16x8LeS + const OpcodeI16x8LeU + const OpcodeI16x8Load8x8S + const OpcodeI16x8Load8x8U + const OpcodeI16x8LtS + const OpcodeI16x8LtU + const OpcodeI16x8MaxS + const OpcodeI16x8MaxU + const OpcodeI16x8MinS + const OpcodeI16x8MinU + const OpcodeI16x8Mul + const OpcodeI16x8NarrowI32x4S + const OpcodeI16x8NarrowI32x4U + const OpcodeI16x8Ne + const OpcodeI16x8Neg + const OpcodeI16x8ReplaceLane + const OpcodeI16x8RoundingAverageU + const OpcodeI16x8Shl + const OpcodeI16x8ShrS + const OpcodeI16x8ShrU + const OpcodeI16x8Splat + const OpcodeI16x8Sub + const OpcodeI16x8SubSaturateS + const OpcodeI16x8SubSaturateU + const OpcodeI16x8WidenHighI8x16S + const OpcodeI16x8WidenHighI8x16U + const OpcodeI16x8WidenLowI8x16S + const OpcodeI16x8WidenLowI8x16U + const OpcodeI32Add + const OpcodeI32And + const OpcodeI32AtomicLoad + const OpcodeI32AtomicLoad16U + const OpcodeI32AtomicLoad8U + const OpcodeI32AtomicRmw16AddU + const OpcodeI32AtomicRmw16AndU + const OpcodeI32AtomicRmw16CmpxchgU + const OpcodeI32AtomicRmw16OrU + const OpcodeI32AtomicRmw16SubU + const OpcodeI32AtomicRmw16XchgU + const OpcodeI32AtomicRmw16XorU + const OpcodeI32AtomicRmw8AddU + const OpcodeI32AtomicRmw8AndU + const OpcodeI32AtomicRmw8CmpxchgU + const OpcodeI32AtomicRmw8OrU + const OpcodeI32AtomicRmw8SubU + const OpcodeI32AtomicRmw8XchgU + const OpcodeI32AtomicRmw8XorU + const OpcodeI32AtomicRmwAdd + const OpcodeI32AtomicRmwAnd + const OpcodeI32AtomicRmwCmpxchg + const OpcodeI32AtomicRmwOr + const OpcodeI32AtomicRmwSub + const OpcodeI32AtomicRmwXchg + const OpcodeI32AtomicRmwXor + const OpcodeI32AtomicStore + const OpcodeI32AtomicStore16 + const OpcodeI32AtomicStore8 + const OpcodeI32AtomicWait + const OpcodeI32Clz + const OpcodeI32Const + const OpcodeI32Ctz + const OpcodeI32DivS + const OpcodeI32DivU + const OpcodeI32Eq + const OpcodeI32Eqz + const OpcodeI32Extend16S + const OpcodeI32Extend8S + const OpcodeI32GeS + const OpcodeI32GeU + const OpcodeI32GtS + const OpcodeI32GtU + const OpcodeI32LeS + const OpcodeI32LeU + const OpcodeI32Load + const OpcodeI32Load16S + const OpcodeI32Load16U + const OpcodeI32Load8S + const OpcodeI32Load8U + const OpcodeI32LtS + const OpcodeI32LtU + const OpcodeI32Mul + const OpcodeI32Ne + const OpcodeI32Or + const OpcodeI32Popcnt + const OpcodeI32ReinterpretF32 + const OpcodeI32RemS + const OpcodeI32RemU + const OpcodeI32Rotl + const OpcodeI32Rotr + const OpcodeI32Shl + const OpcodeI32ShrS + const OpcodeI32ShrU + const OpcodeI32Store + const OpcodeI32Store16 + const OpcodeI32Store8 + const OpcodeI32Sub + const OpcodeI32TruncF32S + const OpcodeI32TruncF32U + const OpcodeI32TruncF64S + const OpcodeI32TruncF64U + const OpcodeI32TruncSatF32S + const OpcodeI32TruncSatF32U + const OpcodeI32TruncSatF64S + const OpcodeI32TruncSatF64U + const OpcodeI32WrapI64 + const OpcodeI32Xor + const OpcodeI32x4Add + const OpcodeI32x4AllTrue + const OpcodeI32x4AnyTrue + const OpcodeI32x4Eq + const OpcodeI32x4ExtractLane + const OpcodeI32x4GeS + const OpcodeI32x4GeU + const OpcodeI32x4GtS + const OpcodeI32x4GtU + const OpcodeI32x4LeS + const OpcodeI32x4LeU + const OpcodeI32x4Load16x4S + const OpcodeI32x4Load16x4U + const OpcodeI32x4LtS + const OpcodeI32x4LtU + const OpcodeI32x4MaxS + const OpcodeI32x4MaxU + const OpcodeI32x4MinS + const OpcodeI32x4MinU + const OpcodeI32x4Mul + const OpcodeI32x4Ne + const OpcodeI32x4Neg + const OpcodeI32x4ReplaceLane + const OpcodeI32x4Shl + const OpcodeI32x4ShrS + const OpcodeI32x4ShrU + const OpcodeI32x4Splat + const OpcodeI32x4Sub + const OpcodeI32x4TruncSatF32x4S + const OpcodeI32x4TruncSatF32x4U + const OpcodeI32x4WidenHighI16x8S + const OpcodeI32x4WidenHighI16x8U + const OpcodeI32x4WidenLowI16x8S + const OpcodeI32x4WidenLowI16x8U + const OpcodeI64Add + const OpcodeI64And + const OpcodeI64AtomicLoad + const OpcodeI64AtomicLoad16U + const OpcodeI64AtomicLoad32U + const OpcodeI64AtomicLoad8U + const OpcodeI64AtomicRmw16AddU + const OpcodeI64AtomicRmw16AndU + const OpcodeI64AtomicRmw16CmpxchgU + const OpcodeI64AtomicRmw16OrU + const OpcodeI64AtomicRmw16SubU + const OpcodeI64AtomicRmw16XchgU + const OpcodeI64AtomicRmw16XorU + const OpcodeI64AtomicRmw32AddU + const OpcodeI64AtomicRmw32AndU + const OpcodeI64AtomicRmw32CmpxchgU + const OpcodeI64AtomicRmw32OrU + const OpcodeI64AtomicRmw32SubU + const OpcodeI64AtomicRmw32XchgU + const OpcodeI64AtomicRmw32XorU + const OpcodeI64AtomicRmw8AddU + const OpcodeI64AtomicRmw8AndU + const OpcodeI64AtomicRmw8CmpxchgU + const OpcodeI64AtomicRmw8OrU + const OpcodeI64AtomicRmw8SubU + const OpcodeI64AtomicRmw8XchgU + const OpcodeI64AtomicRmw8XorU + const OpcodeI64AtomicRmwAdd + const OpcodeI64AtomicRmwAnd + const OpcodeI64AtomicRmwCmpxchg + const OpcodeI64AtomicRmwOr + const OpcodeI64AtomicRmwSub + const OpcodeI64AtomicRmwXchg + const OpcodeI64AtomicRmwXor + const OpcodeI64AtomicStore + const OpcodeI64AtomicStore16 + const OpcodeI64AtomicStore32 + const OpcodeI64AtomicStore8 + const OpcodeI64AtomicWait + const OpcodeI64Clz + const OpcodeI64Const + const OpcodeI64Ctz + const OpcodeI64DivS + const OpcodeI64DivU + const OpcodeI64Eq + const OpcodeI64Eqz + const OpcodeI64Extend16S + const OpcodeI64Extend32S + const OpcodeI64Extend8S + const OpcodeI64ExtendI32S + const OpcodeI64ExtendI32U + const OpcodeI64GeS + const OpcodeI64GeU + const OpcodeI64GtS + const OpcodeI64GtU + const OpcodeI64LeS + const OpcodeI64LeU + const OpcodeI64Load + const OpcodeI64Load16S + const OpcodeI64Load16U + const OpcodeI64Load32S + const OpcodeI64Load32U + const OpcodeI64Load8S + const OpcodeI64Load8U + const OpcodeI64LtS + const OpcodeI64LtU + const OpcodeI64Mul + const OpcodeI64Ne + const OpcodeI64Or + const OpcodeI64Popcnt + const OpcodeI64ReinterpretF64 + const OpcodeI64RemS + const OpcodeI64RemU + const OpcodeI64Rotl + const OpcodeI64Rotr + const OpcodeI64Shl + const OpcodeI64ShrS + const OpcodeI64ShrU + const OpcodeI64Store + const OpcodeI64Store16 + const OpcodeI64Store32 + const OpcodeI64Store8 + const OpcodeI64Sub + const OpcodeI64TruncF32S + const OpcodeI64TruncF32U + const OpcodeI64TruncF64S + const OpcodeI64TruncF64U + const OpcodeI64TruncSatF32S + const OpcodeI64TruncSatF32U + const OpcodeI64TruncSatF64S + const OpcodeI64TruncSatF64U + const OpcodeI64Xor + const OpcodeI64x2Add + const OpcodeI64x2AllTrue + const OpcodeI64x2AnyTrue + const OpcodeI64x2ExtractLane + const OpcodeI64x2Load32x2S + const OpcodeI64x2Load32x2U + const OpcodeI64x2Mul + const OpcodeI64x2Neg + const OpcodeI64x2ReplaceLane + const OpcodeI64x2Shl + const OpcodeI64x2ShrS + const OpcodeI64x2ShrU + const OpcodeI64x2Splat + const OpcodeI64x2Sub + const OpcodeI64x2TruncSatF64x2S + const OpcodeI64x2TruncSatF64x2U + const OpcodeI8x16Add + const OpcodeI8x16AddSaturateS + const OpcodeI8x16AddSaturateU + const OpcodeI8x16AllTrue + const OpcodeI8x16AnyTrue + const OpcodeI8x16Eq + const OpcodeI8x16ExtractLaneS + const OpcodeI8x16ExtractLaneU + const OpcodeI8x16GeS + const OpcodeI8x16GeU + const OpcodeI8x16GtS + const OpcodeI8x16GtU + const OpcodeI8x16LeS + const OpcodeI8x16LeU + const OpcodeI8x16LtS + const OpcodeI8x16LtU + const OpcodeI8x16MaxS + const OpcodeI8x16MaxU + const OpcodeI8x16MinS + const OpcodeI8x16MinU + const OpcodeI8x16Mul + const OpcodeI8x16NarrowI16x8S + const OpcodeI8x16NarrowI16x8U + const OpcodeI8x16Ne + const OpcodeI8x16Neg + const OpcodeI8x16ReplaceLane + const OpcodeI8x16RoundingAverageU + const OpcodeI8x16Shl + const OpcodeI8x16ShrS + const OpcodeI8x16ShrU + const OpcodeI8x16Splat + const OpcodeI8x16Sub + const OpcodeI8x16SubSaturateS + const OpcodeI8x16SubSaturateU + const OpcodeIf + const OpcodeLocalAllocate + const OpcodeLocalGet + const OpcodeLocalSet + const OpcodeLocalTee + const OpcodeLoop + const OpcodeMemoryCopy + const OpcodeMemoryFill + const OpcodeMemoryGrow + const OpcodeMemoryInit + const OpcodeMemorySize + const OpcodeNop + const OpcodeRefFunc + const OpcodeRefIsNull + const OpcodeRefNull + const OpcodeReturn + const OpcodeSelect + const OpcodeTableCopy + const OpcodeTableFill + const OpcodeTableGet + const OpcodeTableGrow + const OpcodeTableInit + const OpcodeTableSet + const OpcodeTableSize + const OpcodeTypedSelect + const OpcodeUnreachable + const OpcodeV128And + const OpcodeV128AndNot + const OpcodeV128Bitselect + const OpcodeV128Const + const OpcodeV128Load + const OpcodeV128Not + const OpcodeV128Or + const OpcodeV128Store + const OpcodeV128Xor + const OpcodeV16x8LoadSplat + const OpcodeV32x4LoadSplat + const OpcodeV64x2LoadSplat + const OpcodeV8x16LoadSplat + const OpcodeV8x16Shuffle + const OpcodeV8x16Swizzle + var ErrCachingFailed = errors.New("instance caching failed") + var ErrFailedCacheImports = errors.New("could not cache imports") + var ErrFailedInstantiation = errors.New("could not create wasmer instance") + var ErrInvalidBytecode = errors.New("invalid bytecode") + func ForceInstallSighandlers() + func GetLastError() (string, error) + func SetImports(imports *Imports) error + func SetOpcodeCosts(opcode_costs *[OPCODE_COUNT]uint32) + func SetSIGSEGVPassthrough() + type CompilationOptions struct + GasLimit uint64 + MaxMemoryGrow uint64 + MaxMemoryGrowDelta uint64 + Metering bool + OpcodeTrace bool + RuntimeBreakpoints bool + UnmeteredLocals uint64 + type ExportSignaturesMap map[string]*ExportedFunctionSignature + type ExportedFunctionCallback func(...interface{}) (Value, error) + type ExportedFunctionError struct + func NewExportedFunctionError(functionName string, message string) *ExportedFunctionError + func (error *ExportedFunctionError) Error() string + type ExportedFunctionSignature struct + InputArity int + OutputArity int + type ExportsMap map[string]ExportedFunctionCallback + type Import struct + type ImportedFunctionError struct + func NewImportedFunctionError(functionName string, message string) *ImportedFunctionError + func (error *ImportedFunctionError) Error() string + type Imports struct + func NewImports() *Imports + func (imports *Imports) Append(importName string, implementation interface{}, cgoPointer unsafe.Pointer) (*Imports, error) + func (imports *Imports) Close() + func (imports *Imports) Count() int + func (imports *Imports) Names() vmcommon.FunctionNames + func (imports *Imports) Namespace(namespace string) *Imports + type Instance struct + Data *uintptr + DataPointer unsafe.Pointer + Exports ExportsMap + InstanceCtx InstanceContext + Memory MemoryHandler + Signatures ExportSignaturesMap + func NewInstanceFromCompiledCodeWithOptions(compiledCode []byte, options CompilationOptions) (*Instance, error) + func NewInstanceWithOptions(bytes []byte, options CompilationOptions) (*Instance, error) + func (instance *Instance) Cache() ([]byte, error) + func (instance *Instance) Clean() + func (instance *Instance) GetBreakpointValue() uint64 + func (instance *Instance) GetData() uintptr + func (instance *Instance) GetExports() ExportsMap + func (instance *Instance) GetInstanceCtxMemory() MemoryHandler + func (instance *Instance) GetMemory() MemoryHandler + func (instance *Instance) GetPointsUsed() uint64 + func (instance *Instance) GetSignature(functionName string) (*ExportedFunctionSignature, bool) + func (instance *Instance) HasMemory() bool + func (instance *Instance) IsFunctionImported(name string) bool + func (instance *Instance) SetBreakpointValue(value uint64) + func (instance *Instance) SetContextData(data uintptr) + func (instance *Instance) SetGasLimit(gasLimit uint64) + func (instance *Instance) SetPointsUsed(points uint64) + type InstanceContext struct + func IntoInstanceContext(instanceContext unsafe.Pointer) InstanceContext + func IntoInstanceContextDirect(instanceContext *cWasmerInstanceContextT) InstanceContext + func NewInstanceContext(ctx *cWasmerInstanceContextT, mem Memory) *InstanceContext + func (instanceContext *InstanceContext) Data() unsafe.Pointer + func (instanceContext *InstanceContext) Memory() MemoryHandler + type InstanceError struct + func NewInstanceError(message string) *InstanceError + func (error *InstanceError) Error() string + type InstanceHandler interface + Cache func() ([]byte, error) + Clean func() + GetBreakpointValue func() uint64 + GetData func() uintptr + GetExports func() ExportsMap + GetInstanceCtxMemory func() MemoryHandler + GetMemory func() MemoryHandler + GetPointsUsed func() uint64 + GetSignature func(functionName string) (*ExportedFunctionSignature, bool) + HasMemory func() bool + IsFunctionImported func(name string) bool + SetBreakpointValue func(value uint64) + SetContextData func(data uintptr) + SetGasLimit func(gasLimit uint64) + SetPointsUsed func(points uint64) + type Memory struct + func (memory *Memory) Data() []byte + func (memory *Memory) Destroy() + func (memory *Memory) Grow(numberOfPages uint32) error + func (memory *Memory) Length() uint32 + type MemoryError struct + func NewMemoryError(message string) *MemoryError + func (error *MemoryError) Error() string + type MemoryHandler interface + Data func() []byte + Destroy func() + Grow func(pages uint32) error + Length func() uint32 + type Value struct + func I32(value int32) Value + func I64(value int64) Value + func Void() Value + func (value Value) GetType() ValueType + func (value Value) IsVoid() bool + func (value Value) String() string + func (value Value) ToI32() int32 + func (value Value) ToI64() int64 + func (value Value) ToVoid() interface{} + type ValueType int + const TypeI32 + const TypeI64 + const TypeVoid