pub struct ColumnTuple { /* private fields */ }Expand description
Column for tuple types (fixed number of heterogeneous columns).
Implementations§
Source§impl ColumnTuple
impl ColumnTuple
Sourcepub fn new(type_: Type, columns: Vec<ColumnRef>) -> Self
pub fn new(type_: Type, columns: Vec<ColumnRef>) -> Self
Create a new tuple column with the given type and element columns.
Sourcepub fn column_count(&self) -> usize
pub fn column_count(&self) -> usize
Get the number of columns in the tuple
Sourcepub fn column_at(&self, index: usize) -> ColumnRef
pub fn column_at(&self, index: usize) -> ColumnRef
Get a reference to a specific column in the tuple
Sourcepub fn column_at_mut(&mut self, index: usize) -> &mut dyn Column
pub fn column_at_mut(&mut self, index: usize) -> &mut dyn Column
Get mutable reference to a specific column (for appending)
Trait Implementations§
Source§impl Column for ColumnTuple
impl Column for ColumnTuple
Source§fn column_type(&self) -> &Type
fn column_type(&self) -> &Type
Get the type of this column
Source§fn append_column(&mut self, other: ColumnRef) -> Result<()>
fn append_column(&mut self, other: ColumnRef) -> Result<()>
Append another column’s data to this column
Source§fn load_prefix(&mut self, buffer: &mut &[u8], rows: usize) -> Result<()>
fn load_prefix(&mut self, buffer: &mut &[u8], rows: usize) -> Result<()>
Load column prefix from byte buffer (for types that need prefix data)
Default implementation is a no-op. Override for types like
LowCardinality. This matches C++ clickhouse-cpp’s LoadPrefix pattern.
Source§fn load_from_buffer(&mut self, buffer: &mut &[u8], rows: usize) -> Result<()>
fn load_from_buffer(&mut self, buffer: &mut &[u8], rows: usize) -> Result<()>
Load column data from byte buffer
Source§fn save_prefix(&self, buffer: &mut BytesMut) -> Result<()>
fn save_prefix(&self, buffer: &mut BytesMut) -> Result<()>
Save column prefix to byte buffer (for types that need prefix data)
Default implementation is a no-op. Override for types like
LowCardinality, Array with special nested types. This matches C++
clickhouse-cpp’s SavePrefix pattern.
Source§fn clone_empty(&self) -> ColumnRef
fn clone_empty(&self) -> ColumnRef
Create an empty clone of this column (same type, no data)
Source§fn as_any_mut(&mut self) -> &mut dyn Any
fn as_any_mut(&mut self) -> &mut dyn Any
Downcast to a mutable concrete column type
Auto Trait Implementations§
impl Freeze for ColumnTuple
impl !RefUnwindSafe for ColumnTuple
impl Send for ColumnTuple
impl Sync for ColumnTuple
impl Unpin for ColumnTuple
impl !UnwindSafe for ColumnTuple
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