pub struct Options<TC, CC = Vec<u64>, VC = Vec<u64>, WC = u64> {
pub indexes: RankSelect<CC, VC, WC>,
pub somes: TC,
}
Fields§
§indexes: RankSelect<CC, VC, WC>
Uses two bits for each item, one to indicate the variant and one (amortized) to enable efficient rank determination.
somes: TC
Trait Implementations§
Source§impl<'a, TC: AsBytes<'a>, CC: AsBytes<'a>, VC: AsBytes<'a>> AsBytes<'a> for Options<TC, CC, VC, &'a u64>
impl<'a, TC: AsBytes<'a>, CC: AsBytes<'a>, VC: AsBytes<'a>> AsBytes<'a> for Options<TC, CC, VC, &'a u64>
Source§impl<TC: Container> Container for Options<TC>
impl<TC: Container> Container for Options<TC>
Source§type Ref<'a> = Option<<TC as Container>::Ref<'a>>
where
TC: 'a
type Ref<'a> = Option<<TC as Container>::Ref<'a>> where TC: 'a
For each lifetime, a reference with that lifetime. Read more
Source§type Borrowed<'a> = Options<<TC as Container>::Borrowed<'a>, &'a [u64], &'a [u64], &'a u64>
where
TC: 'a
type Borrowed<'a> = Options<<TC as Container>::Borrowed<'a>, &'a [u64], &'a [u64], &'a u64> where TC: 'a
The type of a borrowed container. Read more
Source§fn borrow<'a>(&'a self) -> Self::Borrowed<'a>
fn borrow<'a>(&'a self) -> Self::Borrowed<'a>
Converts a reference to the type to a borrowed variant.
Source§fn reborrow<'b, 'a: 'b>(thing: Self::Borrowed<'a>) -> Self::Borrowed<'b>where
TC: 'a,
fn reborrow<'b, 'a: 'b>(thing: Self::Borrowed<'a>) -> Self::Borrowed<'b>where
TC: 'a,
Reborrows the borrowed type to a shorter lifetime. See
Columnar::reborrow
for details.Source§fn reborrow_ref<'b, 'a: 'b>(thing: Self::Ref<'a>) -> Self::Ref<'b>where
Self: 'a,
fn reborrow_ref<'b, 'a: 'b>(thing: Self::Ref<'a>) -> Self::Ref<'b>where
Self: 'a,
Reborrows the borrowed type to a shorter lifetime. See
Columnar::reborrow
for details.fn reserve_for<'a, I>(&mut self, selves: I)
Source§impl<'a, TC: FromBytes<'a>, CC: FromBytes<'a>, VC: FromBytes<'a>> FromBytes<'a> for Options<TC, CC, VC, &'a u64>
impl<'a, TC: FromBytes<'a>, CC: FromBytes<'a>, VC: FromBytes<'a>> FromBytes<'a> for Options<TC, CC, VC, &'a u64>
Source§impl<'a, TC, CC: IndexAs<u64> + Len, VC: IndexAs<u64> + Len, WC: CopyAs<u64>> Index for &'a Options<TC, CC, VC, WC>
impl<'a, TC, CC: IndexAs<u64> + Len, VC: IndexAs<u64> + Len, WC: CopyAs<u64>> Index for &'a Options<TC, CC, VC, WC>
Source§impl<TC: Index, CC: IndexAs<u64> + Len, VC: IndexAs<u64> + Len, WC: CopyAs<u64>> Index for Options<TC, CC, VC, WC>
impl<TC: Index, CC: IndexAs<u64> + Len, VC: IndexAs<u64> + Len, WC: CopyAs<u64>> Index for Options<TC, CC, VC, WC>
Source§impl<TC: IndexMut, CC: IndexAs<u64> + Len, VC: IndexAs<u64> + Len> IndexMut for Options<TC, CC, VC>
impl<TC: IndexMut, CC: IndexAs<u64> + Len, VC: IndexAs<u64> + Len> IndexMut for Options<TC, CC, VC>
Source§impl<TC: PartialEq, CC: PartialEq, VC: PartialEq, WC: PartialEq> PartialEq for Options<TC, CC, VC, WC>
impl<TC: PartialEq, CC: PartialEq, VC: PartialEq, WC: PartialEq> PartialEq for Options<TC, CC, VC, WC>
impl<TC: Copy, CC: Copy, VC: Copy, WC: Copy> Copy for Options<TC, CC, VC, WC>
impl<TC, CC, VC, WC> StructuralPartialEq for Options<TC, CC, VC, WC>
Auto Trait Implementations§
impl<TC, CC, VC, WC> Freeze for Options<TC, CC, VC, WC>
impl<TC, CC, VC, WC> RefUnwindSafe for Options<TC, CC, VC, WC>
impl<TC, CC, VC, WC> Send for Options<TC, CC, VC, WC>
impl<TC, CC, VC, WC> Sync for Options<TC, CC, VC, WC>
impl<TC, CC, VC, WC> Unpin for Options<TC, CC, VC, WC>
impl<TC, CC, VC, WC> UnwindSafe for Options<TC, CC, VC, WC>
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
Mutably borrows from an owned value. Read more