31 lines
847 B
Cheetah
31 lines
847 B
Cheetah
|
|
{{- /*gotype: efprojects.com/kitten-ipc/kitcom.goGenData*/ -}}
|
|
|
|
// Code generated by kitcom. DO NOT EDIT.
|
|
|
|
package {{.PkgName}}
|
|
|
|
import kittenipc "efprojects.com/kitten-ipc"
|
|
|
|
{{range $e := .Api.Endpoints}}
|
|
|
|
type {{.Name}} struct {
|
|
Ipc *kittenipc.KittenIPC
|
|
}
|
|
|
|
{{range $mtd := .Methods}}
|
|
func ({{$e.Name | receiver}} *{{$e.Name}}) {{$mtd.Name}}(
|
|
{{- range $mtd.Params}}{{.Name}} {{.Type | typedef}}, {{end -}}
|
|
) (
|
|
{{- range $mtd.Ret}}{{.Type | typedef}}, {{end -}}
|
|
) {
|
|
results, err := {{$e.Name | receiver}}.Ipc.Call("{{$mtd.Name}}"{{range $mtd.Params}}, {{.Name}}{{end}})
|
|
if err != nil {
|
|
return {{range $idx, $ret := $mtd.Ret}}{{zerovalue $ret.Type}}, {{end}}, fmt.Errorf("call to {{$e.Name}}.{{$mtd.Name}} failed: %w", err)
|
|
}
|
|
return {{range $idx, $ret := $mtd.Ret}}results[{{$idx}}].({{$ret.Type | typedef}}), {{end}}
|
|
}
|
|
{{end}}
|
|
|
|
{{end}}
|