pub struct IndexView<'a> {
pub name: &'a str,
pub layout: EnumValue<IndexLayout>,
pub key_columns: RepeatedView<'a, u32>,
pub cover_columns: RepeatedView<'a, u32>,
pub __buffa_unknown_fields: UnknownFieldsView<'a>,
}Expand description
Secondary index declared on a Table.
Fields§
§name: &'a strField 1: name
layout: EnumValue<IndexLayout>Field 2: layout
key_columns: RepeatedView<'a, u32>Indices into Table.columns that make up the index key, in sort order.
Field 3: key_columns
cover_columns: RepeatedView<'a, u32>Additional column indices stored in the index payload so point lookups through this index don’t need a base-row fetch (“covered” columns).
Field 4: cover_columns
__buffa_unknown_fields: UnknownFieldsView<'a>Trait Implementations§
Source§impl<'v> DefaultViewInstance for IndexView<'v>
impl<'v> DefaultViewInstance for IndexView<'v>
Source§fn default_view_instance<'a>() -> &'a Selfwhere
Self: 'a,
fn default_view_instance<'a>() -> &'a Selfwhere
Self: 'a,
Source§impl<'a> MessageName for IndexView<'a>
impl<'a> MessageName for IndexView<'a>
Source§const PACKAGE: &'static str = "sql.v1"
const PACKAGE: &'static str = "sql.v1"
Source§const NAME: &'static str = "Index"
const NAME: &'static str = "Index"
. between nesting levels. Read moreSource§impl<'a> MessageView<'a> for IndexView<'a>
impl<'a> MessageView<'a> for IndexView<'a>
Source§fn decode_view(buf: &'a [u8]) -> Result<Self, DecodeError>
fn decode_view(buf: &'a [u8]) -> Result<Self, DecodeError>
Source§fn decode_view_with_limit(
buf: &'a [u8],
depth: u32,
) -> Result<Self, DecodeError>
fn decode_view_with_limit( buf: &'a [u8], depth: u32, ) -> Result<Self, DecodeError>
Source§fn to_owned_message(&self) -> Index
fn to_owned_message(&self) -> Index
Source§impl<'__a> Serialize for IndexView<'__a>
Serializes this view as protobuf JSON.
impl<'__a> Serialize for IndexView<'__a>
Serializes this view as protobuf JSON.
Implicit-presence fields with default values are omitted, required
fields are always emitted, explicit-presence (optional) fields are
emitted only when set, bytes fields are base64-encoded, and enum
values are their proto name strings.
This impl uses serialize_map(None) because the number of emitted
fields depends on default-omission rules; serializers that require
known map lengths (e.g. bincode) will return a runtime error.
Use the owned message type for those formats.
Source§impl<'a> ViewEncode<'a> for IndexView<'a>
impl<'a> ViewEncode<'a> for IndexView<'a>
Source§fn compute_size(&self, _cache: &mut SizeCache) -> u32
fn compute_size(&self, _cache: &mut SizeCache) -> u32
Source§fn write_to(&self, _cache: &mut SizeCache, buf: &mut impl BufMut)
fn write_to(&self, _cache: &mut SizeCache, buf: &mut impl BufMut)
cache (populated by a prior
compute_size call on the same cache). Read moreSource§fn encode(&self, buf: &mut impl BufMut)
fn encode(&self, buf: &mut impl BufMut)
Source§fn encode_with_cache(&self, cache: &mut SizeCache, buf: &mut impl BufMut)
fn encode_with_cache(&self, cache: &mut SizeCache, buf: &mut impl BufMut)
SizeCache, for
reuse across many encodes in a hot loop. Clears the cache first.Source§fn encoded_len(&self) -> u32
fn encoded_len(&self) -> u32
Source§fn encode_length_delimited(&self, buf: &mut impl BufMut)
fn encode_length_delimited(&self, buf: &mut impl BufMut)
Source§fn encode_to_bytes(&self) -> Bytes
fn encode_to_bytes(&self) -> Bytes
bytes::Bytes.Source§impl ViewReborrow for IndexView<'static>
impl ViewReborrow for IndexView<'static>
Source§type Reborrowed<'b> = IndexView<'b>
type Reborrowed<'b> = IndexView<'b>
'b.Source§fn reborrow<'b>(this: &'b Self) -> &'b Self::Reborrowed<'b>
fn reborrow<'b>(this: &'b Self) -> &'b Self::Reborrowed<'b>
&'b Self (= &'b FooView<'static>) to
&'b Self::Reborrowed<'b> (= &'b FooView<'b>). The canonical body
is just this; the compiler accepts it via standard lifetime
variance for covariant view types. Read moreAuto Trait Implementations§
impl<'a> Freeze for IndexView<'a>
impl<'a> RefUnwindSafe for IndexView<'a>
impl<'a> Send for IndexView<'a>
impl<'a> Sync for IndexView<'a>
impl<'a> Unpin for IndexView<'a>
impl<'a> UnsafeUnpin for IndexView<'a>
impl<'a> UnwindSafe for IndexView<'a>
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