Google.Protobuf
Namespace with 30 public types
Classes
ByteString
Immutable array of bytes.
CodedInputStream
Reads and decodes protocol message fields.
CodedOutputStream
Encodes and writes protocol message fields.
Extension`2
Represents a type-safe extension identifier used for getting and setting single extension values in instances.
This API is experimental and subject to change.
ExtensionRegistry
Provides extensions to messages while parsing. This API is experimental and subject to change.
ExtensionSet`1
Used for keeping track of extensions in messages.
methods route to this set.
Most users will not need to use this class directly
FieldCodec`1
An encode/decode pair for a single field. This effectively encapsulates
all the information needed to read or write the field value from/to a coded
stream.
This class is public and has to be as it is used by generated code, but its public
API is very limited - just what the generated code needs to call directly.
InvalidJsonException
Thrown when an attempt is made to parse invalid JSON, e.g. using
a non-string property key, or including a redundant comma. Parsing a protocol buffer
message represented in JSON using can throw both this
exception and depending on the situation. This
exception is only thrown for "pure JSON" errors, whereas InvalidProtocolBufferException
is thrown when the JSON may be valid in and of itself, but cannot be parsed as a protocol buffer
message.
InvalidProtocolBufferException
Thrown when a protocol message being parsed is invalid in some way,
e.g. it contains a malformed varint or a negative byte length.
JsonFormatter
Reflection-based converter from messages to JSON.
JsonParser
Reflection-based converter from JSON to messages.
MessageParser
A general message parser, typically used by reflection-based code as all the methods
return simple .
MessageParser`1
A parser for a specific message type.
RepeatedExtension`2
Represents a type-safe extension identifier used for getting repeated extension values in instances.
This API is experimental and subject to change.
UnknownFieldSet
Used to keep track of fields which were seen when parsing a protocol message
but whose field numbers or types are unrecognized. This most frequently
occurs when new fields are added to a message type and then messages containing
those fields are read by old software that was built before the new types were
added.
Most users will never need to use this class directly.
Structures
ParseContext
An opaque struct that represents the current parsing state and is passed along
as the parsing proceeds.
All the public methods are intended to be invoked only by the generated code,
users should never invoke them directly.
WriteContext
An opaque struct that represents the current serialization state and is passed along
as the serialization proceeds.
All the public methods are intended to be invoked only by the generated code,
users should never invoke them directly.
Static Classes
ExtensionSet
Methods for managing s with null checking.
Most users will not use this class directly and its API is experimental and subject to change.
FieldCodec
Factory methods for .
MessageExtensions
Extension methods on and .
ProtoPreconditions
Helper methods for throwing exceptions when preconditions are not met.
UnsafeByteOperations
Provides a number of unsafe byte operations to be used by advanced applications with high performance
requirements. These methods are referred to as "unsafe" due to the fact that they potentially expose
the backing buffer of a to the application.
WireFormat
This class is used internally by the Protocol Buffer Library and generated
message implementations. It is public only for the sake of those generated
messages. Others should not use this class directly.
This class contains constants and helper functions useful for dealing with
the Protocol Buffer wire format.
Abstract Classes
Extension
Represents a non-generic extension definition. This API is experimental and subject to change.
Interfaces
IBufferMessage
Interface for a Protocol Buffers message, supporting
parsing from and writing to .
ICustomDiagnosticMessage
A message type that has a custom string format for diagnostic purposes.
IDeepCloneable`1
Generic interface for a deeply cloneable type.
IExtendableMessage`1
Generic interface for a Protocol Buffers message containing one or more extensions, where the type parameter is expected to be the same type as the implementation class.
This interface is experiemental and is subject to change.
IMessage
Interface for a Protocol Buffers message, supporting
basic operations required for serialization.
IMessage`1
Generic interface for a Protocol Buffers message,
where the type parameter is expected to be the same type as
the implementation class.