pub struct Data(/* private fields */);Expand description
Columns by name, each len rows long. Cloning is one reference count.
Every change takes a generation no other table has had, and a clone shares its original’s, so equal generations mean equal contents. A table rebuilt from the same values is a new generation: hold the table, not the values it was built from, to keep what was computed from it.
Implementations§
Source§impl Data
impl Data
pub fn new() -> Self
Sourcepub fn with(self, field: impl Into<SharedString>, column: Column) -> Self
pub fn with(self, field: impl Into<SharedString>, column: Column) -> Self
Adds field, or replaces the column of that name in place.
§Panics
If the table already has a column and column is not as long.
pub fn number( self, field: impl Into<SharedString>, values: impl Into<Arc<[f64]>>, ) -> Self
pub fn text<S: Into<SharedString>>( self, field: impl Into<SharedString>, values: impl IntoIterator<Item = S>, ) -> Self
pub fn column(&self, field: &str) -> Option<&Column>
Sourcepub fn fields(&self) -> impl Iterator<Item = (&SharedString, &Column)>
pub fn fields(&self) -> impl Iterator<Item = (&SharedString, &Column)>
In the order they were first added.
pub fn is_empty(&self) -> bool
Sourcepub fn generation(&self) -> u64
pub fn generation(&self) -> u64
0 for a table with no columns.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Data
impl RefUnwindSafe for Data
impl Send for Data
impl Sync for Data
impl Unpin for Data
impl UnsafeUnpin for Data
impl UnwindSafe for Data
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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> ⓘ
Converts
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> ⓘ
Converts
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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<R, P> ReadPrimitive<R> for P
impl<R, P> ReadPrimitive<R> for P
Source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
Read this value from the supplied reader. Same as
ReadEndian::read_from_little_endian().