Every protocol buffer is an instance of Message. This class enables serialization by providing reflection of all of the fields that may be used by this type.
Methods
messageName :: Proxy msg -> TextA unique identifier for this type, of the format
"packagename.messagename".packedMessageDescriptor :: Proxy msg -> ByteStringThe serialized protobuffer message descriptor for this type.
For a friendlier version which returns the actual descriptor type, use
Data.ProtoLens.Descriptor.messageDescriptorfrom theproto-lens-protobuf-typespackage.packedFileDescriptor :: Proxy msg -> ByteStringThe serialized protobuffer file message descriptor containing this type.
For a friendlier version which returns the actual file descriptor type, use
Data.ProtoLens.Descriptor.fileDescriptorfrom theproto-lens-protobuf-typespackage.defMessage :: msgA message with all fields set to their default values.
Satisfies
encodeMessage defMessage == ""anddecodeMessage "" == Right defMessage.fieldsByTag :: Map Tag (FieldDescriptor msg)The fields of the proto, indexed by their (integer) tag.
fieldsByTextFormatName :: Map String (FieldDescriptor msg)This map is keyed by the name of the field used for text format protos. This is just the field name for every field except for group fields, which use their Message type name in text protos instead of their field name. For example, "optional group Foo" has the field name "foo" but in this map it is stored with the key
Foo.unknownFields :: Lens' msg FieldSetAccess the unknown fields of a Message.
parseMessage :: Parser msgDecode a message value.
See also the functions in Data.ProtoLens.Encoding.
buildMessage :: msg -> BuilderEncode a message value.
See also the functions in Data.ProtoLens.Encoding.