pub trait EncodeDbn {
// Required methods
fn encode_record<R: DbnEncodable>(&mut self, record: &R) -> Result<()>;
fn flush(&mut self) -> Result<()>;
// Provided methods
fn encode_records<R: DbnEncodable>(&mut self, records: &[R]) -> Result<()> { ... }
fn encode_stream<R: DbnEncodable>(
&mut self,
stream: impl StreamingIterator<Item = R>
) -> Result<()> { ... }
unsafe fn encode_record_ref(
&mut self,
record: RecordRef<'_>,
ts_out: bool
) -> Result<()> { ... }
fn encode_decoded<D: DecodeDbn>(&mut self, decoder: D) -> Result<()> { ... }
fn encode_decoded_with_limit<D: DecodeDbn>(
&mut self,
decoder: D,
limit: NonZeroU64
) -> Result<()> { ... }
}Expand description
Trait for types that encode DBN records with mixed schemas.
Required Methods§
sourcefn encode_record<R: DbnEncodable>(&mut self, record: &R) -> Result<()>
fn encode_record<R: DbnEncodable>(&mut self, record: &R) -> Result<()>
Encodes a single DBN record of type R.
Errors
This function returns an error if it’s unable to write to the underlying writer or there’s a serialization error.
Provided Methods§
sourcefn encode_records<R: DbnEncodable>(&mut self, records: &[R]) -> Result<()>
fn encode_records<R: DbnEncodable>(&mut self, records: &[R]) -> Result<()>
Encodes a slice of DBN records.
Errors
This function returns an error if it’s unable to write to the underlying writer or there’s a serialization error.
sourcefn encode_stream<R: DbnEncodable>(
&mut self,
stream: impl StreamingIterator<Item = R>
) -> Result<()>
fn encode_stream<R: DbnEncodable>( &mut self, stream: impl StreamingIterator<Item = R> ) -> Result<()>
Encodes a stream of DBN records.
Errors
This function returns an error if it’s unable to write to the underlying writer or there’s a serialization error.
sourcefn encode_decoded<D: DecodeDbn>(&mut self, decoder: D) -> Result<()>
fn encode_decoded<D: DecodeDbn>(&mut self, decoder: D) -> Result<()>
Encodes DBN records directly from a DBN decoder.
Errors
This function returns an error if it’s unable to write to the underlying writer or there’s a serialization error.
sourcefn encode_decoded_with_limit<D: DecodeDbn>(
&mut self,
decoder: D,
limit: NonZeroU64
) -> Result<()>
fn encode_decoded_with_limit<D: DecodeDbn>( &mut self, decoder: D, limit: NonZeroU64 ) -> Result<()>
Encodes DBN records directly from a DBN decoder, outputting no more than
limit records.
Errors
This function returns an error if it’s unable to write to the underlying writer or there’s a serialization error.