type StructProperties … type Properties … type OneofProperties … // String formats the properties in the protobuf struct field tag style. func (p *Properties) String() string { … } // Parse populates p by parsing a string in the protobuf struct field tag style. func (p *Properties) Parse(tag string) { … } // Init populates the properties from a protocol buffer struct tag. // // Deprecated: Do not use. func (p *Properties) Init(typ reflect.Type, name, tag string, f *reflect.StructField) { … } var propertiesCache … // GetProperties returns the list of properties for the type represented by t, // which must be a generated protocol buffer message in the open-struct API, // where protobuf message fields are represented by exported Go struct fields. // // Deprecated: Use protobuf reflection instead. func GetProperties(t reflect.Type) *StructProperties { … } func newProperties(t reflect.Type) *StructProperties { … } func (sp *StructProperties) Len() int { … } func (sp *StructProperties) Less(i, j int) bool { … } func (sp *StructProperties) Swap(i, j int) { … }