Forest_Client/Tool/Luban/Luban.ClientServer/Templates/proto/go/rpc.tpl

52 lines
1.2 KiB
Smarty
Raw Normal View History

2024-06-12 15:01:54 +08:00
{{-
go_full_name = x.go_full_name
parent_def_type = x.parent_def_type
is_abstract_type = x.is_abstract_type
hierarchy_fields = x.hierarchy_fields
hierarchy_not_abstract_children = x.hierarchy_not_abstract_children
arg_type = x.targ_type
res_type = x.tres_type
-}}
package {{x.top_module}}
import (
"bright/serialization"
"errors"
)
{{x.go_bin_import}}
type {{go_full_name}} struct {
SeqId int64
Arg {{go_define_type arg_type}}
Res {{go_define_type res_type}}
}
const TypeId_{{go_full_name}} = {{x.id}}
func (*{{go_full_name}}) GetTypeId() int32 {
return {{x.id}}
}
func (_v *{{go_full_name}})Serialize(_buf *serialization.ByteBuf) {
_buf.WriteLong(_v.SeqId)
if _v.SeqId & 0x1 == 0 {
{{go_serialize_field arg_type "_v.Arg" '_buf'}}
} else {
{{go_serialize_field res_type "_v.Res" '_buf'}}
}
}
func (_v *{{go_full_name}})Deserialize(_buf *serialization.ByteBuf) (err error) {
if _v.SeqId, err = _buf.ReadLong() ; err != nil {
return
}
if _v.SeqId & 0x1 == 0 {
{{go_deserialize_field arg_type "_v.Arg" '_buf' 'err'}}
} else {
{{go_deserialize_field res_type "_v.Res" '_buf' 'err'}}
}
return
}