Protobuf binary codec for Any type support.
This module is only compiled when the protobuf library is available.
It provides encode/decode functions for converting between CEL struct
representations and protobuf binary format, enabling google.protobuf.Any
pack/unpack operations.
Summary
Functions
Returns true if the protobuf codec is available.
Decode protobuf binary to a CEL struct value.
Encode a CEL struct value to protobuf binary format.
Get the fully-qualified protobuf name from a compiled module.
Pack a CEL struct into a google.protobuf.Any representation.
Resolve a CEL type name to a compiled protobuf module.
Extract the fully-qualified type name from a type_url.
Unpack a google.protobuf.Any to its contained CEL struct.
Functions
Returns true if the protobuf codec is available.
Decode protobuf binary to a CEL struct value.
Takes a type_url and binary value, resolves the protobuf module,
and decodes to a {:cel_struct, type_name, fields} tuple.
Encode a CEL struct value to protobuf binary format.
Takes a CEL type name and fields map, resolves the protobuf module, and encodes to binary wire format.
Get the fully-qualified protobuf name from a compiled module.
Pack a CEL struct into a google.protobuf.Any representation.
Returns {:cel_struct, "google.protobuf.Any", %{"type_url" => ..., "value" => ...}}.
Resolve a CEL type name to a compiled protobuf module.
Extract the fully-qualified type name from a type_url.
Unpack a google.protobuf.Any to its contained CEL struct.