package util
import (
"context"
"github.com/tetratelabs/wazero"
"github.com/tetratelabs/wazero/api"
)
type funcVI[T0 i32 ] func (context .Context , api .Module , T0 )
func (fn funcVI [T0 ]) Call (ctx context .Context , mod api .Module , stack []uint64 ) {
fn (ctx , mod , T0 (stack [0 ]))
}
func ExportFuncVI [T0 i32 ](mod wazero .HostModuleBuilder , name string , fn func (context .Context , api .Module , T0 )) {
mod .NewFunctionBuilder ().
WithGoModuleFunction (funcVI [T0 ](fn ),
[]api .ValueType {api .ValueTypeI32 }, nil ).
Export (name )
}
type funcVIII[T0 , T1 , T2 i32 ] func (context .Context , api .Module , T0 , T1 , T2 )
func (fn funcVIII [T0 , T1 , T2 ]) Call (ctx context .Context , mod api .Module , stack []uint64 ) {
_ = stack [2 ]
fn (ctx , mod , T0 (stack [0 ]), T1 (stack [1 ]), T2 (stack [2 ]))
}
func ExportFuncVIII [T0 , T1 , T2 i32 ](mod wazero .HostModuleBuilder , name string , fn func (context .Context , api .Module , T0 , T1 , T2 )) {
mod .NewFunctionBuilder ().
WithGoModuleFunction (funcVIII [T0 , T1 , T2 ](fn ),
[]api .ValueType {api .ValueTypeI32 , api .ValueTypeI32 , api .ValueTypeI32 }, nil ).
Export (name )
}
type funcVIIII[T0 , T1 , T2 , T3 i32 ] func (context .Context , api .Module , T0 , T1 , T2 , T3 )
func (fn funcVIIII [T0 , T1 , T2 , T3 ]) Call (ctx context .Context , mod api .Module , stack []uint64 ) {
_ = stack [3 ]
fn (ctx , mod , T0 (stack [0 ]), T1 (stack [1 ]), T2 (stack [2 ]), T3 (stack [3 ]))
}
func ExportFuncVIIII [T0 , T1 , T2 , T3 i32 ](mod wazero .HostModuleBuilder , name string , fn func (context .Context , api .Module , T0 , T1 , T2 , T3 )) {
mod .NewFunctionBuilder ().
WithGoModuleFunction (funcVIIII [T0 , T1 , T2 , T3 ](fn ),
[]api .ValueType {api .ValueTypeI32 , api .ValueTypeI32 , api .ValueTypeI32 , api .ValueTypeI32 }, nil ).
Export (name )
}
type funcVIIIII[T0 , T1 , T2 , T3 , T4 i32 ] func (context .Context , api .Module , T0 , T1 , T2 , T3 , T4 )
func (fn funcVIIIII [T0 , T1 , T2 , T3 , T4 ]) Call (ctx context .Context , mod api .Module , stack []uint64 ) {
_ = stack [4 ]
fn (ctx , mod , T0 (stack [0 ]), T1 (stack [1 ]), T2 (stack [2 ]), T3 (stack [3 ]), T4 (stack [4 ]))
}
func ExportFuncVIIIII [T0 , T1 , T2 , T3 , T4 i32 ](mod wazero .HostModuleBuilder , name string , fn func (context .Context , api .Module , T0 , T1 , T2 , T3 , T4 )) {
mod .NewFunctionBuilder ().
WithGoModuleFunction (funcVIIIII [T0 , T1 , T2 , T3 , T4 ](fn ),
[]api .ValueType {api .ValueTypeI32 , api .ValueTypeI32 , api .ValueTypeI32 , api .ValueTypeI32 , api .ValueTypeI32 }, nil ).
Export (name )
}
type funcVIIIIJ[T0 , T1 , T2 , T3 i32 , T4 i64 ] func (context .Context , api .Module , T0 , T1 , T2 , T3 , T4 )
func (fn funcVIIIIJ [T0 , T1 , T2 , T3 , T4 ]) Call (ctx context .Context , mod api .Module , stack []uint64 ) {
_ = stack [4 ]
fn (ctx , mod , T0 (stack [0 ]), T1 (stack [1 ]), T2 (stack [2 ]), T3 (stack [3 ]), T4 (stack [4 ]))
}
func ExportFuncVIIIIJ [T0 , T1 , T2 , T3 i32 , T4 i64 ](mod wazero .HostModuleBuilder , name string , fn func (context .Context , api .Module , T0 , T1 , T2 , T3 , T4 )) {
mod .NewFunctionBuilder ().
WithGoModuleFunction (funcVIIIIJ [T0 , T1 , T2 , T3 , T4 ](fn ),
[]api .ValueType {api .ValueTypeI32 , api .ValueTypeI32 , api .ValueTypeI32 , api .ValueTypeI32 , api .ValueTypeI64 }, nil ).
Export (name )
}
type funcII[TR , T0 i32 ] func (context .Context , api .Module , T0 ) TR
func (fn funcII [TR , T0 ]) Call (ctx context .Context , mod api .Module , stack []uint64 ) {
stack [0 ] = uint64 (fn (ctx , mod , T0 (stack [0 ])))
}
func ExportFuncII [TR , T0 i32 ](mod wazero .HostModuleBuilder , name string , fn func (context .Context , api .Module , T0 ) TR ) {
mod .NewFunctionBuilder ().
WithGoModuleFunction (funcII [TR , T0 ](fn ),
[]api .ValueType {api .ValueTypeI32 }, []api .ValueType {api .ValueTypeI32 }).
Export (name )
}
type funcIII[TR , T0 , T1 i32 ] func (context .Context , api .Module , T0 , T1 ) TR
func (fn funcIII [TR , T0 , T1 ]) Call (ctx context .Context , mod api .Module , stack []uint64 ) {
_ = stack [1 ]
stack [0 ] = uint64 (fn (ctx , mod , T0 (stack [0 ]), T1 (stack [1 ])))
}
func ExportFuncIII [TR , T0 , T1 i32 ](mod wazero .HostModuleBuilder , name string , fn func (context .Context , api .Module , T0 , T1 ) TR ) {
mod .NewFunctionBuilder ().
WithGoModuleFunction (funcIII [TR , T0 , T1 ](fn ),
[]api .ValueType {api .ValueTypeI32 , api .ValueTypeI32 }, []api .ValueType {api .ValueTypeI32 }).
Export (name )
}
type funcIIII[TR , T0 , T1 , T2 i32 ] func (context .Context , api .Module , T0 , T1 , T2 ) TR
func (fn funcIIII [TR , T0 , T1 , T2 ]) Call (ctx context .Context , mod api .Module , stack []uint64 ) {
_ = stack [2 ]
stack [0 ] = uint64 (fn (ctx , mod , T0 (stack [0 ]), T1 (stack [1 ]), T2 (stack [2 ])))
}
func ExportFuncIIII [TR , T0 , T1 , T2 i32 ](mod wazero .HostModuleBuilder , name string , fn func (context .Context , api .Module , T0 , T1 , T2 ) TR ) {
mod .NewFunctionBuilder ().
WithGoModuleFunction (funcIIII [TR , T0 , T1 , T2 ](fn ),
[]api .ValueType {api .ValueTypeI32 , api .ValueTypeI32 , api .ValueTypeI32 }, []api .ValueType {api .ValueTypeI32 }).
Export (name )
}
type funcIIIII[TR , T0 , T1 , T2 , T3 i32 ] func (context .Context , api .Module , T0 , T1 , T2 , T3 ) TR
func (fn funcIIIII [TR , T0 , T1 , T2 , T3 ]) Call (ctx context .Context , mod api .Module , stack []uint64 ) {
_ = stack [3 ]
stack [0 ] = uint64 (fn (ctx , mod , T0 (stack [0 ]), T1 (stack [1 ]), T2 (stack [2 ]), T3 (stack [3 ])))
}
func ExportFuncIIIII [TR , T0 , T1 , T2 , T3 i32 ](mod wazero .HostModuleBuilder , name string , fn func (context .Context , api .Module , T0 , T1 , T2 , T3 ) TR ) {
mod .NewFunctionBuilder ().
WithGoModuleFunction (funcIIIII [TR , T0 , T1 , T2 , T3 ](fn ),
[]api .ValueType {api .ValueTypeI32 , api .ValueTypeI32 , api .ValueTypeI32 , api .ValueTypeI32 }, []api .ValueType {api .ValueTypeI32 }).
Export (name )
}
type funcIIIIII[TR , T0 , T1 , T2 , T3 , T4 i32 ] func (context .Context , api .Module , T0 , T1 , T2 , T3 , T4 ) TR
func (fn funcIIIIII [TR , T0 , T1 , T2 , T3 , T4 ]) Call (ctx context .Context , mod api .Module , stack []uint64 ) {
_ = stack [4 ]
stack [0 ] = uint64 (fn (ctx , mod , T0 (stack [0 ]), T1 (stack [1 ]), T2 (stack [2 ]), T3 (stack [3 ]), T4 (stack [4 ])))
}
func ExportFuncIIIIII [TR , T0 , T1 , T2 , T3 , T4 i32 ](mod wazero .HostModuleBuilder , name string , fn func (context .Context , api .Module , T0 , T1 , T2 , T3 , T4 ) TR ) {
mod .NewFunctionBuilder ().
WithGoModuleFunction (funcIIIIII [TR , T0 , T1 , T2 , T3 , T4 ](fn ),
[]api .ValueType {api .ValueTypeI32 , api .ValueTypeI32 , api .ValueTypeI32 , api .ValueTypeI32 , api .ValueTypeI32 }, []api .ValueType {api .ValueTypeI32 }).
Export (name )
}
type funcIIIIIII[TR , T0 , T1 , T2 , T3 , T4 , T5 i32 ] func (context .Context , api .Module , T0 , T1 , T2 , T3 , T4 , T5 ) TR
func (fn funcIIIIIII [TR , T0 , T1 , T2 , T3 , T4 , T5 ]) Call (ctx context .Context , mod api .Module , stack []uint64 ) {
_ = stack [5 ]
stack [0 ] = uint64 (fn (ctx , mod , T0 (stack [0 ]), T1 (stack [1 ]), T2 (stack [2 ]), T3 (stack [3 ]), T4 (stack [4 ]), T5 (stack [5 ])))
}
func ExportFuncIIIIIII [TR , T0 , T1 , T2 , T3 , T4 , T5 i32 ](mod wazero .HostModuleBuilder , name string , fn func (context .Context , api .Module , T0 , T1 , T2 , T3 , T4 , T5 ) TR ) {
mod .NewFunctionBuilder ().
WithGoModuleFunction (funcIIIIIII [TR , T0 , T1 , T2 , T3 , T4 , T5 ](fn ),
[]api .ValueType {api .ValueTypeI32 , api .ValueTypeI32 , api .ValueTypeI32 , api .ValueTypeI32 , api .ValueTypeI32 , api .ValueTypeI32 }, []api .ValueType {api .ValueTypeI32 }).
Export (name )
}
type funcIIIIJ[TR , T0 , T1 , T2 i32 , T3 i64 ] func (context .Context , api .Module , T0 , T1 , T2 , T3 ) TR
func (fn funcIIIIJ [TR , T0 , T1 , T2 , T3 ]) Call (ctx context .Context , mod api .Module , stack []uint64 ) {
_ = stack [3 ]
stack [0 ] = uint64 (fn (ctx , mod , T0 (stack [0 ]), T1 (stack [1 ]), T2 (stack [2 ]), T3 (stack [3 ])))
}
func ExportFuncIIIIJ [TR , T0 , T1 , T2 i32 , T3 i64 ](mod wazero .HostModuleBuilder , name string , fn func (context .Context , api .Module , T0 , T1 , T2 , T3 ) TR ) {
mod .NewFunctionBuilder ().
WithGoModuleFunction (funcIIIIJ [TR , T0 , T1 , T2 , T3 ](fn ),
[]api .ValueType {api .ValueTypeI32 , api .ValueTypeI32 , api .ValueTypeI32 , api .ValueTypeI64 }, []api .ValueType {api .ValueTypeI32 }).
Export (name )
}
type funcIIJ[TR , T0 i32 , T1 i64 ] func (context .Context , api .Module , T0 , T1 ) TR
func (fn funcIIJ [TR , T0 , T1 ]) Call (ctx context .Context , mod api .Module , stack []uint64 ) {
_ = stack [1 ]
stack [0 ] = uint64 (fn (ctx , mod , T0 (stack [0 ]), T1 (stack [1 ])))
}
func ExportFuncIIJ [TR , T0 i32 , T1 i64 ](mod wazero .HostModuleBuilder , name string , fn func (context .Context , api .Module , T0 , T1 ) TR ) {
mod .NewFunctionBuilder ().
WithGoModuleFunction (funcIIJ [TR , T0 , T1 ](fn ),
[]api .ValueType {api .ValueTypeI32 , api .ValueTypeI64 }, []api .ValueType {api .ValueTypeI32 }).
Export (name )
}
The pages are generated with Golds v0.8.2 . (GOOS=linux GOARCH=amd64)
Golds is a Go 101 project developed by Tapir Liu .
PR and bug reports are welcome and can be submitted to the issue list .
Please follow @zigo_101 (reachable from the left QR code) to get the latest news of Golds .