[][src]Crate pb_jelly

Modules

varint
wire_format

Structs

CopyWriter

A wrapper around a Write which copies all the data into the underlying Writer.

Fixed32
Fixed64
Lazy

A wrapper around a lazily-evaluted PbBufferReader which implements Message.

Sfixed32
Sfixed64
Signed32
Signed64
Unrecognized

Traits

ClosedProtoEnum

Trait implemented by enums which are generated with the err_if_default option. Note that these enums are not forward compatible, since they do not handle unrecognized enum variants (and will fail to deserialize instead).

Message

Trait implemented by all the messages defined in proto files and base datatypes like string, bytes, etc. The exact details of this trait is implemented for messages and base types can be found at - https://developers.google.com/protocol-buffers/docs/encoding

MessageDescriptor

Trait implemented by all the messages defined in proto files. Provides rudimentary support for message descriptor, mostly as a way to get the type name for a given message rather than trying to implement the full reflection API. For more info, see: https://developers.google.com/protocol-buffers/docs/techniques https://github.com/protocolbuffers/protobuf/blob/master/src/google/protobuf/descriptor.proto

OpenProtoEnum

Trait implemented by enums to help with serialization and deserialization.

PbBuffer

A stand-in trait for any backing buffer store. Required to be object-safe for lazy evaluation. PbBuffers are expected to own references to the data they reference, and should be cheap (constant-time) to clone.

PbBufferReader

All concrete types which are used for deserialization should implement PbBufferReader, which includes functions to convert to and from PbBuffer.

PbBufferWriter

All concrete types used for serialization should implement PbBufferWriter in order to support serializing lazily-evaluated types without copies.

ProtoEnum

Marker trait for proto enums.

Functions

cast_buffer

If B1 and B2 are the same type, returns the passed-in buffer; otherwise, returns an error.

ensure_split
ensure_wire_format
skip
unexpected_eof