Struct mz_arrow_util::builder::ArrowBuilder
source · pub struct ArrowBuilder {
columns: Vec<ArrowColumn>,
row_size_bytes: usize,
}
Fields§
§columns: Vec<ArrowColumn>
§row_size_bytes: usize
A crude estimate of the size of the data in the builder based on the size of the rows added to it.
Implementations§
source§impl ArrowBuilder
impl ArrowBuilder
sourcepub fn validate_desc(desc: &RelationDesc) -> Result<(), Error>
pub fn validate_desc(desc: &RelationDesc) -> Result<(), Error>
Helper to validate that a RelationDesc can be encoded into Arrow.
sourcepub fn new(
desc: &RelationDesc,
item_capacity: usize,
data_capacity: usize,
) -> Result<Self, Error>
pub fn new( desc: &RelationDesc, item_capacity: usize, data_capacity: usize, ) -> Result<Self, Error>
Initializes a new ArrowBuilder with the schema of the provided RelationDesc.
item_capacity
is used to initialize the capacity of each column’s builder which defines
the number of values that can be appended to each column before reallocating.
data_capacity
is used to initialize the buffer size of the string and binary builders.
Errors if the relation contains an unimplemented type.
sourcepub fn to_record_batch(self) -> Result<RecordBatch, ArrowError>
pub fn to_record_batch(self) -> Result<RecordBatch, ArrowError>
Converts the ArrowBuilder into an arrow RecordBatch.
sourcepub fn add_row(&mut self, row: &Row) -> Result<(), Error>
pub fn add_row(&mut self, row: &Row) -> Result<(), Error>
Appends a row to the builder. Errors if the row contains an unimplemented or out-of-range value.
pub fn row_size_bytes(&self) -> usize
Auto Trait Implementations§
impl Freeze for ArrowBuilder
impl !RefUnwindSafe for ArrowBuilder
impl Send for ArrowBuilder
impl Sync for ArrowBuilder
impl Unpin for ArrowBuilder
impl !UnwindSafe for ArrowBuilder
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> FutureExt for T
impl<T> FutureExt for T
source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T
in a tonic::Request
source§impl<T, U> OverrideFrom<Option<&T>> for Uwhere
U: OverrideFrom<T>,
impl<T, U> OverrideFrom<Option<&T>> for Uwhere
U: OverrideFrom<T>,
source§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<P, R> ProtoType<R> for Pwhere
R: RustType<P>,
impl<P, R> ProtoType<R> for Pwhere
R: RustType<P>,
source§fn into_rust(self) -> Result<R, TryFromProtoError>
fn into_rust(self) -> Result<R, TryFromProtoError>
See
RustType::from_proto
.source§fn from_rust(rust: &R) -> P
fn from_rust(rust: &R) -> P
See
RustType::into_proto
.source§impl<'a, S, T> Semigroup<&'a S> for Twhere
T: Semigroup<S>,
impl<'a, S, T> Semigroup<&'a S> for Twhere
T: Semigroup<S>,
source§fn plus_equals(&mut self, rhs: &&'a S)
fn plus_equals(&mut self, rhs: &&'a S)
The method of
std::ops::AddAssign
, for types that do not implement AddAssign
.