#[repr(transparent)]pub struct Feature(pub i64);
Expand description
Represents Arrow Features that might not have full support within implementations. This is intended to be used in two scenarios:
- A mechanism for readers of Arrow Streams and files to understand that the stream or file makes use of a feature that isn’t supported or unknown to the implementation (and therefore can meet the Arrow forward compatibility guarantees).
- A means of negotiating between a client and server what features a stream is allowed to use. The enums values here are intented to represent higher level features, additional details maybe negotiated with key-value pairs specific to the protocol.
Enums added to this list should be assigned power-of-two values to facilitate exchanging and comparing bitmaps for supported features.
Tuple Fields
0: i64
Implementations
sourceimpl Feature
impl Feature
sourcepub const DICTIONARY_REPLACEMENT: Self = Self(1)
pub const DICTIONARY_REPLACEMENT: Self = Self(1)
The stream makes use of multiple full dictionaries with the same ID and assumes clients implement dictionary replacement correctly.
sourcepub const COMPRESSED_BODY: Self = Self(2)
pub const COMPRESSED_BODY: Self = Self(2)
The stream makes use of compressed bodies as described in Message.fbs.
pub const ENUM_MIN: i64 = 0i64
pub const ENUM_MAX: i64 = 2i64
pub const ENUM_VALUES: &'static [Self] = &[ Self::UNUSED, Self::DICTIONARY_REPLACEMENT, Self::COMPRESSED_BODY, ]
sourcepub fn variant_name(self) -> Option<&'static str>
pub fn variant_name(self) -> Option<&'static str>
Returns the variant’s name or “” if unknown.
Trait Implementations
sourceimpl EndianScalar for Feature
impl EndianScalar for Feature
fn to_little_endian(self) -> Self
fn from_little_endian(self) -> Self
sourceimpl Ord for Feature
impl Ord for Feature
sourceimpl PartialOrd<Feature> for Feature
impl PartialOrd<Feature> for Feature
sourcefn partial_cmp(&self, other: &Feature) -> Option<Ordering>
fn partial_cmp(&self, other: &Feature) -> Option<Ordering>
This method returns an ordering between self
and other
values if one exists. Read more
1.0.0 · sourcefn lt(&self, other: &Rhs) -> bool
fn lt(&self, other: &Rhs) -> bool
This method tests less than (for self
and other
) and is used by the <
operator. Read more
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
sourceimpl<'a> Verifiable for Feature
impl<'a> Verifiable for Feature
sourcefn run_verifier(
v: &mut Verifier<'_, '_>,
pos: usize
) -> Result<(), InvalidFlatbuffer>
fn run_verifier(
v: &mut Verifier<'_, '_>,
pos: usize
) -> Result<(), InvalidFlatbuffer>
Runs the verifier for this type, assuming its at position pos
in the verifier’s buffer.
Should not need to be called directly. Read more
impl Copy for Feature
impl Eq for Feature
impl SimpleToVerifyInSlice for Feature
impl StructuralEq for Feature
impl StructuralPartialEq for Feature
Auto Trait Implementations
impl RefUnwindSafe for Feature
impl Send for Feature
impl Sync for Feature
impl Unpin for Feature
impl UnwindSafe for Feature
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
sourcefn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to key
and return true
if they are equal.