public class MessageParser
A general message parser, typically used by reflection-based code as all the methods return simple IMessage.
Derived Types
Namespace
Google.ProtobufAssembly
Google.Protobuf.dll
Methods
ParseDelimitedFrom(Stream)
public IMessage ParseDelimitedFrom(Stream input)
Parses a length-delimited message from the given stream.
Parameter | |
---|---|
Name | Description |
input | Stream The stream to parse. |
Returns | |
---|---|
Type | Description |
IMessage | The parsed message. |
The stream is expected to contain a length and then the data. Only the amount of data specified by the length will be consumed.
ParseFrom(ByteString)
public IMessage ParseFrom(ByteString data)
Parses a message from the given byte string.
Parameter | |
---|---|
Name | Description |
data | ByteString The data to parse. |
Returns | |
---|---|
Type | Description |
IMessage | The parsed message. |
ParseFrom(CodedInputStream)
public IMessage ParseFrom(CodedInputStream input)
Parses a message from the given coded input stream.
Parameter | |
---|---|
Name | Description |
input | CodedInputStream The stream to parse. |
Returns | |
---|---|
Type | Description |
IMessage | The parsed message. |
ParseFrom(ReadOnlySequence<byte>)
public IMessage ParseFrom(ReadOnlySequence<byte> data)
Parses a message from the given sequence.
Parameter | |
---|---|
Name | Description |
data | ReadOnlySequencebyte The data to parse. |
Returns | |
---|---|
Type | Description |
IMessage | The parsed message. |
ParseFrom(byte[])
public IMessage ParseFrom(byte[] data)
Parses a message from a byte array.
Parameter | |
---|---|
Name | Description |
data | byte The byte array containing the message. Must not be null. |
Returns | |
---|---|
Type | Description |
IMessage | The newly parsed message. |
ParseFrom(byte[], int, int)
public IMessage ParseFrom(byte[] data, int offset, int length)
Parses a message from a byte array slice.
Parameters | |
---|---|
Name | Description |
data | byte The byte array containing the message. Must not be null. |
offset | int The offset of the slice to parse. |
length | int The length of the slice to parse. |
Returns | |
---|---|
Type | Description |
IMessage | The newly parsed message. |
ParseFrom(Stream)
public IMessage ParseFrom(Stream input)
Parses a message from the given stream.
Parameter | |
---|---|
Name | Description |
input | Stream The stream to parse. |
Returns | |
---|---|
Type | Description |
IMessage | The parsed message. |
ParseFrom(ReadOnlySpan<byte>)
public IMessage ParseFrom(ReadOnlySpan<byte> data)
Parses a message from the given span.
Parameter | |
---|---|
Name | Description |
data | ReadOnlySpanbyte The data to parse. |
Returns | |
---|---|
Type | Description |
IMessage | The parsed message. |
ParseJson(string)
public IMessage ParseJson(string json)
Parses a message from the given JSON.
Parameter | |
---|---|
Name | Description |
json | string The JSON to parse. |
Returns | |
---|---|
Type | Description |
IMessage | The parsed message. |
This method always uses the default JSON parser; it is not affected by WithDiscardUnknownFields(bool). To ignore unknown fields when parsing JSON, create a JsonParser using a JsonParser.Settings with IgnoreUnknownFields set to true and call Parse<T>(string) directly.
Exceptions | |
---|---|
Type | Description |
InvalidJsonException | The JSON does not comply with RFC 7159 |
InvalidProtocolBufferException | The JSON does not represent a Protocol Buffers message correctly |
WithDiscardUnknownFields(bool)
public MessageParser WithDiscardUnknownFields(bool discardUnknownFields)
Creates a new message parser which optionally discards unknown fields when parsing.
Parameter | |
---|---|
Name | Description |
discardUnknownFields | bool Whether or not to discard unknown fields when parsing. |
Returns | |
---|---|
Type | Description |
MessageParser | A newly configured message parser. |
Note that this does not affect the behavior of ParseJson(string) at all. To ignore unknown fields when parsing JSON, create a JsonParser using a JsonParser.Settings with IgnoreUnknownFields set to true and call Parse<T>(string) directly.
WithExtensionRegistry(ExtensionRegistry)
public MessageParser WithExtensionRegistry(ExtensionRegistry registry)
Creates a new message parser which registers extensions from the specified registry upon creating the message instance
Parameter | |
---|---|
Name | Description |
registry | ExtensionRegistry The extensions to register |
Returns | |
---|---|
Type | Description |
MessageParser | A newly configured message parser. |