pub struct Series {
pub id: SeriesId,
pub namespace: NamespaceId,
pub name: String,
pub columns: Vec<Column>,
pub tag: Option<SumTypeId>,
pub key: SeriesKey,
pub primary_key: Option<PrimaryKey>,
pub underlying: bool,
}Fields§
§id: SeriesId§namespace: NamespaceId§name: String§columns: Vec<Column>§tag: Option<SumTypeId>§key: SeriesKey§primary_key: Option<PrimaryKey>§underlying: boolImplementations§
Source§impl Series
impl Series
pub fn name(&self) -> &str
Sourcepub fn key_column_type(&self) -> Option<Type>
pub fn key_column_type(&self) -> Option<Type>
Returns the Type of the key column, if the key column is found in columns.
Sourcepub fn key_to_u64(&self, value: Value) -> Option<u64>
pub fn key_to_u64(&self, value: Value) -> Option<u64>
Convert a Value to u64 for series key encoding.
Handles both integer and datetime key types. For datetime keys, the nanos-since-epoch value is divided by the precision factor to recover the original u64 key. Negative values (pre-1970 dates, negative integers) are rejected.
Sourcepub fn key_from_u64(&self, v: u64) -> Value
pub fn key_from_u64(&self, v: u64) -> Value
Convert a u64 key value back to the appropriate Value type for encoding.
Sourcepub fn key_column_data(&self, keys: Vec<u64>) -> ColumnData
pub fn key_column_data(&self, keys: Vec<u64>) -> ColumnData
Build a ColumnData from u64 key values using the proper key column type.
Sourcepub fn data_columns(&self) -> impl Iterator<Item = &Column>
pub fn data_columns(&self) -> impl Iterator<Item = &Column>
Returns columns excluding the key column (data columns only).
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Series
impl<'de> Deserialize<'de> for Series
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl StructuralPartialEq for Series
Auto Trait Implementations§
impl Freeze for Series
impl RefUnwindSafe for Series
impl Send for Series
impl Sync for Series
impl Unpin for Series
impl UnsafeUnpin for Series
impl UnwindSafe for Series
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
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 more