pub struct JITDataFrame {
pub columns: Vec<Vec<f64>>,
pub column_ptrs: Vec<*const f64>,
pub timestamps: Vec<i64>,
pub row_count: usize,
}Expand description
Generic DataFrame storage for JIT execution. Stores data as an array of columns, matching the generic column_ptrs design in JITContext.
Column order MUST match the DataFrameSchema used during compilation.
Fields§
§columns: Vec<Vec<f64>>Column data arrays (each Vec is one column) Columns are ordered by index as defined in DataFrameSchema
column_ptrs: Vec<*const f64>Pointers to column data (for JITContext.column_ptrs)
timestamps: Vec<i64>Timestamps (always present, column 0 equivalent)
row_count: usizeNumber of rows
Implementations§
Source§impl JITDataFrame
impl JITDataFrame
Sourcepub fn from_execution_context(
ctx: &ExecutionContext,
schema: &DataFrameSchema,
) -> Self
pub fn from_execution_context( ctx: &ExecutionContext, schema: &DataFrameSchema, ) -> Self
Create from ExecutionContext using a schema mapping. The schema determines which columns to extract and their order.
Sourcepub fn populate_context(&self, ctx: &mut JITContext)
pub fn populate_context(&self, ctx: &mut JITContext)
Populate a JITContext with generic DataFrame pointers. This sets column_ptrs, column_count, row_count, and timestamps_ptr.
Sourcepub fn column_count(&self) -> usize
pub fn column_count(&self) -> usize
Get number of columns
Sourcepub fn from_datatable(dt: &DataTable) -> Self
pub fn from_datatable(dt: &DataTable) -> Self
Create from a DataTable by extracting f64 columns and an optional timestamp column.
All f64 columns are copied into SIMD-aligned buffers. If a column named “timestamp” (or typed as Timestamp) exists, it is extracted as i64.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for JITDataFrame
impl RefUnwindSafe for JITDataFrame
impl !Send for JITDataFrame
impl !Sync for JITDataFrame
impl Unpin for JITDataFrame
impl UnsafeUnpin for JITDataFrame
impl UnwindSafe for JITDataFrame
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> 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