pub struct ProfileReport {
pub id: String,
pub timestamp: String,
pub data_source: DataSource,
pub column_profiles: Vec<ColumnProfile>,
pub execution: ExecutionMetadata,
pub quality: Option<QualityAssessment>,
}Expand description
Complete profiling report for a data source.
Contains column-level statistics, execution metadata, and an optional
ISO 8000/25012 quality assessment. This is the primary output of all
profiling operations (Profiler::analyze_file, Profiler::analyze_source,
Profiler::profile_stream, etc.).
Fields§
§id: StringUnique identifier for this report (UUID v4)
timestamp: StringTimestamp when the report was generated (ISO 8601 / RFC 3339)
data_source: DataSourceData source metadata (file, query, etc.)
column_profiles: Vec<ColumnProfile>Column-level profiling results
execution: ExecutionMetadataExecution metadata (timing, rows processed, truncation info, etc.)
quality: Option<QualityAssessment>Data quality assessment (optional — partial analysis may skip quality)
Implementations§
Source§impl ProfileReport
impl ProfileReport
Sourcepub fn new(
data_source: DataSource,
column_profiles: Vec<ColumnProfile>,
execution: ExecutionMetadata,
quality: Option<QualityAssessment>,
) -> Self
pub fn new( data_source: DataSource, column_profiles: Vec<ColumnProfile>, execution: ExecutionMetadata, quality: Option<QualityAssessment>, ) -> Self
Create a new ProfileReport with auto-generated id and timestamp
Sourcepub fn with_id(self, id: impl Into<String>) -> Self
pub fn with_id(self, id: impl Into<String>) -> Self
Override the auto-generated ID (useful for deterministic caching/testing)
Sourcepub fn with_timestamp(self, timestamp: impl Into<String>) -> Self
pub fn with_timestamp(self, timestamp: impl Into<String>) -> Self
Override the auto-generated timestamp
Sourcepub fn quality_score(&self) -> Option<f64>
pub fn quality_score(&self) -> Option<f64>
Calculate overall quality score using ISO 8000/25012 metrics.
Returns None if quality metrics were not computed.
Sourcepub fn source_identifier(&self) -> String
pub fn source_identifier(&self) -> String
Get the data source identifier (for backwards compatibility)
Trait Implementations§
Source§impl Clone for ProfileReport
impl Clone for ProfileReport
Source§fn clone(&self) -> ProfileReport
fn clone(&self) -> ProfileReport
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ProfileReport
impl Debug for ProfileReport
Source§impl<'de> Deserialize<'de> for ProfileReport
impl<'de> Deserialize<'de> for ProfileReport
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>,
Auto Trait Implementations§
impl Freeze for ProfileReport
impl RefUnwindSafe for ProfileReport
impl Send for ProfileReport
impl Sync for ProfileReport
impl Unpin for ProfileReport
impl UnsafeUnpin for ProfileReport
impl UnwindSafe for ProfileReport
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
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>
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>
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