pub struct AnalysisFactTable {
pub facts: Vec<AnalysisFact>,
}Expand description
Canonical fact table.
Fields§
§facts: Vec<AnalysisFact>Facts in producer order. Conversion to columns sorts by id.
Implementations§
Source§impl AnalysisFactTable
impl AnalysisFactTable
Sourcepub fn new(facts: Vec<AnalysisFact>) -> Self
pub fn new(facts: Vec<AnalysisFact>) -> Self
Build a fact table from facts.
Sourcepub fn validate(&self) -> Result<(), AnalysisFactError>
pub fn validate(&self) -> Result<(), AnalysisFactError>
Validate table-level uniqueness and provenance references.
§Errors
Returns AnalysisFactError when any table invariant is broken.
Sourcepub fn to_columnar(&self) -> Result<AnalysisFactColumns, AnalysisFactError>
pub fn to_columnar(&self) -> Result<AnalysisFactColumns, AnalysisFactError>
Convert facts into deterministic GPU-ready columns sorted by fact id.
§Errors
Returns AnalysisFactError when the fact table is invalid.
Sourcepub fn get(&self, id: FactId) -> Option<&AnalysisFact>
pub fn get(&self, id: FactId) -> Option<&AnalysisFact>
Return one fact by id.
Trait Implementations§
Source§impl Clone for AnalysisFactTable
impl Clone for AnalysisFactTable
Source§fn clone(&self) -> AnalysisFactTable
fn clone(&self) -> AnalysisFactTable
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for AnalysisFactTable
impl Debug for AnalysisFactTable
Source§impl Default for AnalysisFactTable
impl Default for AnalysisFactTable
Source§fn default() -> AnalysisFactTable
fn default() -> AnalysisFactTable
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for AnalysisFactTable
impl<'de> Deserialize<'de> for AnalysisFactTable
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 Eq for AnalysisFactTable
Source§impl PartialEq for AnalysisFactTable
impl PartialEq for AnalysisFactTable
Source§impl Serialize for AnalysisFactTable
impl Serialize for AnalysisFactTable
impl StructuralPartialEq for AnalysisFactTable
Auto Trait Implementations§
impl Freeze for AnalysisFactTable
impl RefUnwindSafe for AnalysisFactTable
impl Send for AnalysisFactTable
impl Sync for AnalysisFactTable
impl Unpin for AnalysisFactTable
impl UnsafeUnpin for AnalysisFactTable
impl UnwindSafe for AnalysisFactTable
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.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