Skip to main content

ArrowStructBuilder

Trait ArrowStructBuilder 

Source
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§

Source

fn append_null(&mut self)

Append a null in this row across every field of this struct.

Provided Methods§

Source

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.

Source

fn append_i64(&mut self, name: &'static str, value: i64)

Append an i64 value for the named field. Default no-op.

Source

fn append_u64(&mut self, name: &'static str, value: u64)

Append a u64 value for the named field. Default no-op.

Source

fn append_f64(&mut self, name: &'static str, value: f64)

Append an f64 value for the named field. Default no-op.

Source

fn append_bool(&mut self, name: &'static str, value: bool)

Append a bool value for the named field. Default no-op.

Source

fn append_bytes(&mut self, name: &'static str, value: &[u8])

Append a binary blob value for the named field. Default no-op.

Source

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".

Implementors§