34 lines
763 B
Smarty
34 lines
763 B
Smarty
|
{{~
|
||
|
name = x.name
|
||
|
namespace = x.namespace
|
||
|
tables = x.tables
|
||
|
~}}
|
||
|
|
||
|
package {{namespace}}
|
||
|
|
||
|
import "{{assembly.args.go_bright_module_name}}/serialization"
|
||
|
|
||
|
type ByteBufLoader func(string) (*serialization.ByteBuf, error)
|
||
|
|
||
|
type {{name}} struct {
|
||
|
{{~for table in tables ~}}
|
||
|
{{table.name}} *{{table.go_full_name}}
|
||
|
{{~end~}}
|
||
|
}
|
||
|
|
||
|
func NewTables(loader ByteBufLoader) (*{{name}}, error) {
|
||
|
var err error
|
||
|
var buf *serialization.ByteBuf
|
||
|
|
||
|
tables := &{{name}}{}
|
||
|
{{~for table in tables ~}}
|
||
|
if buf, err = loader("{{table.output_data_file}}") ; err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
if tables.{{table.name}}, err = New{{table.go_full_name}}(buf) ; err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
{{~end~}}
|
||
|
return tables, nil
|
||
|
}
|