type MarshalOptions … // MarshalTo writes a varint size-delimited wire-format message to w. // If w returns an error, MarshalTo returns it unchanged. func (o MarshalOptions) MarshalTo(w io.Writer, m proto.Message) (int, error) { … } // MarshalTo writes a varint size-delimited wire-format message to w // with the default options. // // See the documentation for [MarshalOptions.MarshalTo]. func MarshalTo(w io.Writer, m proto.Message) (int, error) { … } type UnmarshalOptions … const defaultMaxSize … type SizeTooLargeError … func (e *SizeTooLargeError) Error() string { … } type Reader … // UnmarshalFrom parses and consumes a varint size-delimited wire-format message // from r. // The provided message must be mutable (e.g., a non-nil pointer to a message). // // The error is [io.EOF] error only if no bytes are read. // If an EOF happens after reading some but not all the bytes, // UnmarshalFrom returns a non-io.EOF error. // In particular if r returns a non-io.EOF error, UnmarshalFrom returns it unchanged, // and if only a size is read with no subsequent message, [io.ErrUnexpectedEOF] is returned. func (o UnmarshalOptions) UnmarshalFrom(r Reader, m proto.Message) error { … } // UnmarshalFrom parses and consumes a varint size-delimited wire-format message // from r with the default options. // The provided message must be mutable (e.g., a non-nil pointer to a message). // // See the documentation for [UnmarshalOptions.UnmarshalFrom]. func UnmarshalFrom(r Reader, m proto.Message) error { … }