Protox.Types (Protox v2.0.4)
View SourceThis module describes the types that define a protobuf message.
See https://developers.google.com/protocol-buffers/docs/encoding#structure.
Summary
Types
This type gives more information on the field presence (if applicable).
All types that can be used as a key in a map field.
The wire type of a field: it tells how a field is encoded (32 or 64 bits scalar, repeated or variable-length integer).
All the types that can be stored in a protobuf message.
32 bits scalar.
64 bits scalar.
Repeated field.
Variable length integer.
Types
@type label() :: :none | :optional | :proto3_optional | :repeated | :required | nil
This type gives more information on the field presence (if applicable).
@type map_key() ::
:int32
| :int64
| :uint32
| :uint64
| :sint32
| :sint64
| :fixed32
| :fixed64
| :sfixed32
| :sfixed64
| :bool
| :string
All types that can be used as a key in a map field.
@type tag() :: wire_varint() | wire_64bits() | wire_delimited() | wire_32bits()
The wire type of a field: it tells how a field is encoded (32 or 64 bits scalar, repeated or variable-length integer).
@type type() :: :fixed32 | :sfixed32 | :float | :fixed64 | :sfixed64 | :double | :int32 | :uint32 | :sint32 | :int64 | :uint64 | :sint64 | :bool | :string | :bytes | {:enum, atom()} | {:message, atom()} | {map_key(), type()}
All the types that can be stored in a protobuf message.
@type wire_32bits() :: 5
32 bits scalar.
@type wire_64bits() :: 1
64 bits scalar.
@type wire_delimited() :: 2
Repeated field.
@type wire_varint() :: 0
Variable length integer.