Enum FieldType
#[non_exhaustive]#[repr(u8)]pub enum FieldType {
Show 30 variants
I64 = 1,
F64 = 2,
Bool = 3,
String = 4,
Bytes = 5,
PooledStackFrames = 6,
PooledString = 7,
StackFrames = 8,
Varint = 9,
StringMap = 10,
U8 = 11,
U16 = 12,
U32 = 13,
DynamicList = 14,
DynamicMap = 15,
OptionalI64 = 129,
OptionalF64 = 130,
OptionalBool = 131,
OptionalString = 132,
OptionalBytes = 133,
OptionalPooledStackFrames = 134,
OptionalPooledString = 135,
OptionalStackFrames = 136,
OptionalVarint = 137,
OptionalStringMap = 138,
OptionalU8 = 139,
OptionalU16 = 140,
OptionalU32 = 141,
OptionalDynamicList = 142,
OptionalDynamicMap = 143,
}Available on crate feature
dial9 only.Expand description
Wire type tags for field types.
The high bit (0x80) is reserved as an “optional” modifier. When set, the
field is preceded by a 1-byte presence prefix on the wire: 0x00 means
absent (decoded as FieldValueRef::None), 0x01 means present (followed
by the inner type’s normal encoding). The inner type tag is tag & 0x7F.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
I64 = 1
F64 = 2
Bool = 3
String = 4
Bytes = 5
PooledStackFrames = 6
PooledString = 7
StackFrames = 8
Varint = 9
StringMap = 10
U8 = 11
U16 = 12
U32 = 13
DynamicList = 14
DynamicMap = 15
OptionalI64 = 129
OptionalF64 = 130
OptionalBool = 131
OptionalString = 132
OptionalBytes = 133
OptionalPooledStackFrames = 134
OptionalPooledString = 135
OptionalStackFrames = 136
OptionalVarint = 137
OptionalStringMap = 138
OptionalU8 = 139
OptionalU16 = 140
OptionalU32 = 141
OptionalDynamicList = 142
OptionalDynamicMap = 143
Implementations§
§impl FieldType
impl FieldType
pub const OPTIONAL_BIT: u8 = 0x80
pub const OPTIONAL_BIT: u8 = 0x80
The high bit used to mark a field type as optional on the wire.
pub fn from_tag(tag: u8) -> Option<FieldType>
pub fn is_optional(self) -> bool
pub fn is_optional(self) -> bool
Returns true if this is an optional field type.
Trait Implementations§
impl Copy for FieldType
impl Eq for FieldType
impl StructuralPartialEq for FieldType
Auto Trait Implementations§
impl Freeze for FieldType
impl RefUnwindSafe for FieldType
impl Send for FieldType
impl Sync for FieldType
impl Unpin for FieldType
impl UnsafeUnpin for FieldType
impl UnwindSafe for FieldType
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a rama_grpc::Request§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§fn and<P, B, E>(self, other: P) -> And<T, P>
fn and<P, B, E>(self, other: P) -> And<T, P>
Create a new
Policy that returns Action::Follow only if self and other return
Action::Follow. Read more