Versions in this module Expand all Collapse all v1 v1.0.4 Dec 20, 2018 Changes in this version + func RegisterInterface(f InterfaceGeneratorFunc) + type GeneratorID [8]byte + type InterfaceGeneratorFunc func() interface + type InterfaceMarshaler interface + MarshalID func() [8]byte v1.0.3 Mar 26, 2018 Changes in this version + func Decode(buf []byte, structPtr interface{}) error + func DecodeWithConstructors(buf []byte, structPtr interface{}, cons Constructors) error + func Encode(structPtr interface{}) (bytes []byte, err error) + func GenerateProtobufDefinition(w io.Writer, types []interface{}, enumMap EnumMap, renamer GeneratorNamer) error + type Constructors map[reflect.Type]func() interface + func (c *Constructors) String() string + type DefaultGeneratorNamer struct + func (d *DefaultGeneratorNamer) ConstName(name string) string + func (d *DefaultGeneratorNamer) FieldName(f ProtoField) string + func (d *DefaultGeneratorNamer) TypeName(name string) string + type Enum uint32 + type EnumMap map[string]interface + type GeneratorNamer interface + ConstName func(name string) string + FieldName func(ProtoField) string + TypeName func(name string) string + type ProtoField struct + Field reflect.StructField + ID int64 + Index []int + Name string + Prefix TagPrefix + func ProtoFields(t reflect.Type) []*ProtoField + func (p *ProtoField) Required() bool + type Sfixed32 int32 + type Sfixed64 int64 + type TagPrefix int + const TagNone + const TagOptional + const TagRequired + func ParseTag(field reflect.StructField) (id int, opt TagPrefix, name string) + type Ufixed32 uint32 + type Ufixed64 uint64