package testdata import ( "context" "github.com/go-kratos/kratos/pkg/sync/pipeline/fanout" ) // Demo test struct type Demo struct { ID int64 Title string } // Dao . type dao struct { cache *fanout.Fanout } // New . func New() *dao { return &dao{cache: fanout.New("cache")} } //go:generate kratos tool genbts type _bts interface { // bts: -batch=2 -max_group=20 -batch_err=break -nullcache=&Demo{ID:-1} -check_null_code=$.ID==-1 Demos(c context.Context, keys []int64) (map[int64]*Demo, error) // bts: -batch=2 -max_group=20 -batch_err=continue -nullcache=&Demo{ID:-1} -check_null_code=$.ID==-1 Demos1(c context.Context, keys []int64) (map[int64]*Demo, error) // bts: -sync=true -nullcache=&Demo{ID:-1} -check_null_code=$.ID==-1 Demo(c context.Context, key int64) (*Demo, error) // bts: -paging=true Demo1(c context.Context, key int64, pn int, ps int) (*Demo, error) // bts: -nullcache=&Demo{ID:-1} -check_null_code=$.ID==-1 None(c context.Context) (*Demo, error) }