chore: release v0.4.1
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
//go:build wasip1
|
||||
|
||||
package rudder
|
||||
|
||||
import "unsafe"
|
||||
|
||||
//go:wasmimport rudder_v1 input_len
|
||||
func importInputLength() uint32
|
||||
|
||||
//go:wasmimport rudder_v1 input
|
||||
func importInput(pointer unsafe.Pointer)
|
||||
|
||||
//go:wasmimport rudder_v1 call
|
||||
func importCall(pointer unsafe.Pointer, length uint32) uint32
|
||||
|
||||
//go:wasmimport rudder_v1 result
|
||||
func importResult(pointer unsafe.Pointer)
|
||||
|
||||
//go:wasmimport rudder_v1 output
|
||||
func importOutput(pointer unsafe.Pointer, length uint32)
|
||||
|
||||
//go:wasmexport handle
|
||||
func handle() {
|
||||
runHandle()
|
||||
}
|
||||
|
||||
//go:wasmexport describe
|
||||
func describe() {
|
||||
runDescribe()
|
||||
}
|
||||
|
||||
func readInput() []byte {
|
||||
input := make([]byte, importInputLength())
|
||||
importInput(unsafe.Pointer(unsafe.SliceData(input)))
|
||||
return input
|
||||
}
|
||||
|
||||
func hostCall(request []byte) []byte {
|
||||
response := make([]byte, importCall(unsafe.Pointer(unsafe.SliceData(request)), uint32(len(request))))
|
||||
importResult(unsafe.Pointer(unsafe.SliceData(response)))
|
||||
return response
|
||||
}
|
||||
|
||||
func writeOutput(body []byte) {
|
||||
importOutput(unsafe.Pointer(unsafe.SliceData(body)), uint32(len(body)))
|
||||
}
|
||||
Reference in New Issue
Block a user