enum ParamEncoding {
Varint,
Uint8,
Location,
LengthPrefixed,
TrackNamespaceValue,
LocationFilter,
FillParameters,
}Expand description
How a parameter value is encoded on the wire.
Variants§
Varint
Bare varint.
Uint8
Single byte (uint8).
Location
Two consecutive varints (group, object).
LengthPrefixed
Length-prefixed bytes.
TrackNamespaceValue
A Track Namespace as defined in draft-23 Section 8.7: a varint field count followed by that many length-prefixed fields.
The fifth value encoding draft-23 Section 9.19 lists: “Track Namespace: A sequence of length-prefixed fields (Section 8.7)”. TRACK_NAMESPACE_PREFIX is the parameter that uses it; the field count is the only length the wire carries.
LocationFilter
A Location Filter Type followed by the zero to four vi64 fields that
type names (draft-23 Section 9.19.9).
None of the five encodings Section 9.19 lists fits it. The parameter definition states its own structure, and that structure has no length: the type is the only thing that says where the value ends.
FillParameters
A Number of Parameters count and that many parameters (Section
9.19.15). Like a LOCATION_FILTER it has no length, so the inner
parameters are read one by one to find where it ends.