/r/docs/examples/run/foo/package.gno
package foo import "gno.land/p/demo/ufmt" var ( MainFoo *Foo foos []*Foo ) type Foo struct { bar string baz int } func init() { MainFoo = &Foo{bar: "mainBar", baz: 0} } func (f *Foo) String() string { return ufmt.Sprintf("Foo - (bar: %s) - (baz: %d)\n\n", f.bar, f.baz) } func NewFoo(bar string, baz int) *Foo { return &Foo{bar: bar, baz: baz} } func AddFoos(multipleFoos []*Foo) { foos = append(foos, multipleFoos...) } func Render(_ string) string { var output string for _, f := range foos { output += f.String() } return output }