pub trait ProfileTable:
Debug
+ Send
+ Sync
+ Clone
+ Copy
+ 'static {
type Row: Debug + Sync + Send;
const COLUMNS: &[ProfileColumn];
// Required methods
fn profile_as_rows(profile: &QueryProfile) -> Result<Vec<Self::Row>>;
fn scan(
rows: &[Self::Row],
projections: &Projections,
output: &mut Batch,
) -> Result<()>;
// Provided method
fn column_schema() -> ColumnSchema { ... }
}Required Associated Constants§
const COLUMNS: &[ProfileColumn]
Required Associated Types§
Required Methods§
Sourcefn profile_as_rows(profile: &QueryProfile) -> Result<Vec<Self::Row>>
fn profile_as_rows(profile: &QueryProfile) -> Result<Vec<Self::Row>>
Converts the query profile into rows.
Provided Methods§
Sourcefn column_schema() -> ColumnSchema
fn column_schema() -> ColumnSchema
Generate the column schema for the table.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".