pub trait ArrowStructBuilder: Send {
// Required method
fn append_null(&mut self);
// Provided methods
fn append_str(&mut self, name: &'static str, value: &str) { ... }
fn append_i64(&mut self, name: &'static str, value: i64) { ... }
fn append_u64(&mut self, name: &'static str, value: u64) { ... }
fn append_f64(&mut self, name: &'static str, value: f64) { ... }
fn append_bool(&mut self, name: &'static str, value: bool) { ... }
fn append_bytes(&mut self, name: &'static str, value: &[u8]) { ... }
fn append_field_null(&mut self, name: &'static str) { ... }
}Expand description
Codegen-emitted Arrow StructArray row builder. The default
EventSchemaErased::decode_to_arrow_struct implementation walks
the buffa wire format and calls the matching append_* method per
declared field, in declaration order from the schema’s FIELDS
table. Sinks (obs-parquet, obs-clickhouse) implement this trait
over their builder types; Phase 4A codegen may override
decode_to_arrow_struct for per-event projections. Spec 14 § 2 /
spec 94 § 2.5.
Required Methods§
Sourcefn append_null(&mut self)
fn append_null(&mut self)
Append a null in this row across every field of this struct.
Provided Methods§
Sourcefn append_str(&mut self, name: &'static str, value: &str)
fn append_str(&mut self, name: &'static str, value: &str)
Append a string value for the named field in this row. Default no-op so sinks that haven’t wired this column can still satisfy the trait without breaking the build.
Sourcefn append_i64(&mut self, name: &'static str, value: i64)
fn append_i64(&mut self, name: &'static str, value: i64)
Append an i64 value for the named field. Default no-op.
Sourcefn append_u64(&mut self, name: &'static str, value: u64)
fn append_u64(&mut self, name: &'static str, value: u64)
Append a u64 value for the named field. Default no-op.
Sourcefn append_f64(&mut self, name: &'static str, value: f64)
fn append_f64(&mut self, name: &'static str, value: f64)
Append an f64 value for the named field. Default no-op.
Sourcefn append_bool(&mut self, name: &'static str, value: bool)
fn append_bool(&mut self, name: &'static str, value: bool)
Append a bool value for the named field. Default no-op.
Sourcefn append_bytes(&mut self, name: &'static str, value: &[u8])
fn append_bytes(&mut self, name: &'static str, value: &[u8])
Append a binary blob value for the named field. Default no-op.
Sourcefn append_field_null(&mut self, name: &'static str)
fn append_field_null(&mut self, name: &'static str)
Mark a field as unset/null in this row. Default no-op.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".