Documentation ¶
Overview ¶
Utility methods for managing and writing generated code
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ToPublicName ¶
ToPublicName returns a go-idiomatic public name by using the package's configured namer.
func ToPublicSimpleName ¶
ToPublicSimpleName returns a go-idiomatic public name. The Avro spec specifies names must start with [A-Za-z_] and contain [A-Za-z0-9_]. The golang spec says valid identifiers start with [A-Za-z_] and contain [A-Za-z0-9], but the first character must be [A-Z] for the field to be public.
func ToSnake ¶
ToSnake makes filenames snake-case, taken from https://gist.github.com/elwinar/14e1e897fdbe4d3432e1
Types ¶
type DefaultNamer ¶
type DefaultNamer struct { }
DefaultNamer implements the Namer interface with the backwards-compatible public name generator function.
func (*DefaultNamer) ToPublicName ¶
func (d *DefaultNamer) ToPublicName(name string) string
ToPublicName implements the backwards-compatible name converter in DefaultNamer.
type Namer ¶
type Namer interface { // ToPublicName returns a go-idiomatic public name. The Avro spec // specifies names must start with [A-Za-z_] and contain [A-Za-z0-9_]. // The golang spec says valid identifiers start with [A-Za-z_] and contain // [A-Za-z0-9], but the first character must be [A-Z] for the field to be // public. ToPublicName(name string) string }
Namer is the interface defining a function for converting a name to a go-idiomatic public name.
type NamespaceNamer ¶
type NamespaceNamer struct {
// contains filtered or unexported fields
}
NamespaceNamer is like DefaultNamer but taking into account special tokens so namespaced names can be generated safely.
func NewNamespaceNamer ¶
func NewNamespaceNamer(shortNames bool) *NamespaceNamer
NewNamespaceNamer returns a namespace-aware namer.
func (*NamespaceNamer) ToPublicName ¶
func (n *NamespaceNamer) ToPublicName(name string) string
ToPublicName implements the go-idiomatic public name as in DefaultNamer's struct, but with additional treatment applied in order to remove possible invalid tokens from it. Final string is then converted to camel-case.
type Package ¶
type Package struct {
// contains filtered or unexported fields
}
Package represents the output package