Protobuf codec for the Hrana 3 shared structures.
Filo's execution core works on the canonical Hrana JSON-term maps (the same
maps Jason produces/consumes — integers carried as strings, blobs as no-pad
base64, values tagged by "type"). Protobuf is therefore a pure edge codec:
these functions convert between protobuf wire bytes and those same maps, so the
streams/dispatch/execution layers never change. The HTTP and WebSocket message
envelopes are layered on top in Filo.Protobuf.Http and Filo.Protobuf.Ws.
Each encode_*/1 returns the message body as iodata/0 (a container embeds
it with Filo.Protobuf.Wire.field_len/2); each decode_*/1 takes the message
bytes and returns the Hrana map. Field numbers follow the proto3 schema in the
Hrana 3 spec.
Summary
Functions
Decodes a BatchCond message into a Hrana condition map.
Decodes a Value message into a Hrana value map.
Encodes a Hrana BatchCond map into a BatchCond message body.
Encodes a Hrana value map into a Value message body.
Functions
Decodes a BatchCond message into a Hrana condition map.
Decodes a Value message into a Hrana value map.
Encodes a Hrana BatchCond map into a BatchCond message body.
Encodes a Hrana value map into a Value message body.