Show / Hide Table of Contents

Namespace Google.Protobuf

Classes

ByteString

Immutable array of bytes.

CodedInputStream

Reads and decodes protocol message fields.

CodedOutputStream

Encodes and writes protocol message fields.

CodedOutputStream.OutOfSpaceException

Indicates that a CodedOutputStream wrapping a flat byte array ran out of space.

FieldCodec

Factory methods for FieldCodec<T>.

FieldCodec<T>

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 JsonParser can throw both this exception and InvalidProtocolBufferException 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.

JsonFormatter.Settings

Settings controlling JSON formatting.

JsonParser

Reflection-based converter from JSON to messages.

JsonParser.Settings

Settings controlling JSON parsing.

MessageExtensions

Extension methods on IMessage and IMessage<T>.

MessageParser

A general message parser, typically used by reflection-based code as all the methods return simple IMessage.

MessageParser<T>

A parser for a specific message type.

ProtoPreconditions

Helper methods for throwing exceptions when preconditions are not met.

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.

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.

Interfaces

ICustomDiagnosticMessage

A message type that has a custom string format for diagnostic purposes.

IDeepCloneable<T>

Generic interface for a deeply cloneable type.

IMessage

Interface for a Protocol Buffers message, supporting basic operations required for serialization.

IMessage<T>

Generic interface for a Protocol Buffers message, where the type parameter is expected to be the same type as the implementation class.

Enums

WireFormat.WireType

Wire types within protobuf encoding.

Back to top