pub trait Transcoder {
// Required methods
fn schema(&self) -> SchemaRef;
fn append(&mut self, logs: &[Log]) -> Result<(), AppendError>;
fn len(&self) -> usize;
fn finish(&mut self) -> RecordBatch;
// Provided method
fn is_empty(&self) -> bool { ... }
}