pub struct FullZipLayout {
pub bits_rep: u32,
pub bits_def: u32,
pub num_items: u32,
pub num_visible_items: u32,
pub value_compression: Option<ArrayEncoding>,
pub layers: Vec<i32>,
pub details: Option<Details>,
}
Expand description
/ A layout used for pages where the data is large / / In this case the cost of transposing the data is relatively small (compared to the cost of writing the data) / and so we just zip the buffers together
Fields§
§bits_rep: u32
The number of bits of repetition info (0 if there is no repetition)
bits_def: u32
The number of bits of definition info (0 if there is no definition)
num_items: u32
The number of items in the page
num_visible_items: u32
The number of visible items in the page
value_compression: Option<ArrayEncoding>
Description of the compression of values
layers: Vec<i32>
The meaning of each repdef layer, used to interpret repdef buffers correctly
details: Option<Details>
The number of bits of value info
Note: we use bits here (and not bytes) for consistency with other encodings. However, in practice, there is never a reason to use a bits per value that is not a multiple of 8. The complexity is not worth the small savings in space since this encoding is typically used with large values already.
Implementations§
Source§impl FullZipLayout
impl FullZipLayout
Sourcepub fn layers(
&self,
) -> FilterMap<Cloned<Iter<'_, i32>>, fn(i32) -> Option<RepDefLayer>>
pub fn layers( &self, ) -> FilterMap<Cloned<Iter<'_, i32>>, fn(i32) -> Option<RepDefLayer>>
Returns an iterator which yields the valid enum values contained in layers
.
Sourcepub fn push_layers(&mut self, value: RepDefLayer)
pub fn push_layers(&mut self, value: RepDefLayer)
Appends the provided enum value to layers
.
Trait Implementations§
Source§impl Clone for FullZipLayout
impl Clone for FullZipLayout
Source§fn clone(&self) -> FullZipLayout
fn clone(&self) -> FullZipLayout
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for FullZipLayout
impl Debug for FullZipLayout
Source§impl Default for FullZipLayout
impl Default for FullZipLayout
Source§impl Message for FullZipLayout
impl Message for FullZipLayout
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
.Source§impl Name for FullZipLayout
impl Name for FullZipLayout
Source§const NAME: &'static str = "FullZipLayout"
const NAME: &'static str = "FullZipLayout"
Message
.
This name is the same as it appears in the source .proto file, e.g. FooBar
.Source§const PACKAGE: &'static str = "lance.encodings"
const PACKAGE: &'static str = "lance.encodings"
.
, e.g. google.protobuf
.Source§fn full_name() -> String
fn full_name() -> String
Message
.
It’s prefixed with the package name and names of any parent messages,
e.g. google.rpc.BadRequest.FieldViolation
.
By default, this is the package name followed by the message name.
Fully-qualified names must be unique within a domain of Type URLs.Source§impl PartialEq for FullZipLayout
impl PartialEq for FullZipLayout
impl StructuralPartialEq for FullZipLayout
Auto Trait Implementations§
impl Freeze for FullZipLayout
impl RefUnwindSafe for FullZipLayout
impl Send for FullZipLayout
impl Sync for FullZipLayout
impl Unpin for FullZipLayout
impl UnwindSafe for FullZipLayout
Blanket Implementations§
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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>
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>
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