# Functions
Marshal marshals the given proto.Message in the JSON format using options in MarshalOptions.
MarshalIndent is like Marshal but applies Indent to format the output.
Unmarshal reads the given []byte and populates the given proto.Message using options in the UnmarshalOptions object.
WithMarshalAllowPartial allows messages that have missing required fields to marshal without returning an error.
WithMarshalEmitUnpopulated specifies whether to emit unpopulated fields.
WithMarshaler sets Marshaler.
WithMarshalIndent specifies the set of indentation characters to use in a multiline formatted output such that every entry is preceded by Indent and terminated by a newline.
WithMarshalMultiline specifies whether the marshaler should format the output in indented-form with every textual element on a new line.
WithMarshalResolver is used for looking up types when expanding google.protobuf.Any messages.
WithMarshalUseEnumNumbers emits enum values as numbers.
WithMarshalUseProtoNames uses proto field name instead of lowerCamelCase name in JSON field names.
WithUnmarshalAllowPartial will not return an error if input for messages that will result in missing required fields.
WithUnmarshalDiscardUnknown ignore unknown fields.
WithUnmarshaler sets Unmarshaler.
WithUnmarshalResolver is used for looking up types when unmarshaling google.protobuf.Any messages or extension fields.
# Structs
EmptyMarshalerOption does not alter the configuration.
EmptyUnmarshalerOption does not alter the configuration.
Marshaler is a configurable object for converting between protocol buffer objects and a JSON representation for them.
Unmarshaler is a configurable object for converting from a JSON representation to a protocol buffer object.
# Type aliases
MarshalerOptionFunc wraps a function that modifies Marshaler into an implementation of the MarshalerOption interface.
UnmarshalerOptionFunc wraps a function that modifies Unmarshaler into an implementation of the UnmarshalerOption interface.