Skip to main content

WrappedTable

Struct WrappedTable 

Source
pub struct WrappedTable { /* private fields */ }
Expand description

A WrappedTable takes a Table and extends it with a number of helpful, object-safe methods for accessing a table.

It essentially acts like an extension trait: it is a separate type to allow object-safe extension methods to call methods that require Self: Sized. The implementations here downcast manually to the type used when constructing the WrappedTable.

Implementations§

Source§

impl WrappedTable

Source

pub fn dyn_clone(&self) -> Self

Clone the contents of the table.

Source

pub fn scan_bounded( &self, subset: SubsetRef<'_>, start: Offset, n: usize, out: &mut TaggedRowBuffer, ) -> Option<Offset>

Starting at the given Offset into subset, scan up to n rows and write them to out. Return the next starting offset. If no offset is returned then the subset has been scanned completely. Rows written to out are never stale, so callers can take the buffer’s full contents.

Source

pub fn scan_project( &self, subset: SubsetRef<'_>, cols: &[ColumnId], start: Offset, n: usize, cs: &[Constraint], out: &mut dyn RowSink, ) -> Option<Offset>

A variant fo WrappedTable::scan_bounded that projects a subset of columns and only appends rows that match the given constraints. Rows written to out are never stale, so callers can take the buffer’s full contents.

Source

pub fn scan(&self, subset: SubsetRef<'_>) -> TaggedRowBuffer

Return the contents of the subset as a TaggedRowBuffer.

Source

pub fn len(&self) -> usize

Return the number of rows currently stored in the table.

Source

pub fn is_empty(&self) -> bool

Check if the table is empty.

Trait Implementations§

Source§

impl Deref for WrappedTable

Source§

type Target = dyn Table

The resulting type after dereferencing.
Source§

fn deref(&self) -> &Self::Target

Dereferences the value.
Source§

impl DerefMut for WrappedTable

Source§

fn deref_mut(&mut self) -> &mut Self::Target

Mutably dereferences the value.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<P, T> Receiver for P
where P: Deref<Target = T> + ?Sized, T: ?Sized,

Source§

type Target = T

🔬This is a nightly-only experimental API. (arbitrary_self_types)
The target type on which the method may be called.
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V