pub struct Writer<'a> { /* private fields */ }
Expand description
Abstraction layer for writing UTF tables
Implementations§
Source§impl<'a> Writer<'a>
impl<'a> Writer<'a>
Sourcepub fn end(
&self,
writer: &mut dyn Write,
row_size: u16,
row_count: u32,
) -> Result<()>
pub fn end( &self, writer: &mut dyn Write, row_size: u16, row_count: u32, ) -> Result<()>
Verifies the amount of data written to the row buffer, and writes the final UTF table to the given stream.
§Example
let mut file = File::create("important-table.bin")?;
let writer = Writer::new("ImportantTable");
// ... table writing code ...
writer.end(file, 12, 1000)?:
Sourcepub fn push_constant_column<T: Value>(
&mut self,
name: &'a str,
value: &'a T,
) -> Result<()>
pub fn push_constant_column<T: Value>( &mut self, name: &'a str, value: &'a T, ) -> Result<()>
Adds a new constant column with the given value
§Example
let file_count = 5000u64;
let comment = "This is my comment".to_owned();
{
let writer = Writer::new("ImportantTable");
writer.push_constant_column("FileCount", file_count)?;
writer.push_constant_column::<String>("Comment", &comment)?;
}
Sourcepub fn push_constant_column_opt<T: Value>(
&mut self,
name: &'a str,
value: &'a Option<T>,
) -> Result<()>
pub fn push_constant_column_opt<T: Value>( &mut self, name: &'a str, value: &'a Option<T>, ) -> Result<()>
Adds a new optional constant column with the given value
§Example
let crc32: Option<u32> = Some(0);
let writer = Writer::new("ImportantTable");
writer.push_constant_column_opt("Crc", &crc32)?;
Sourcepub fn push_rowed_column<T: Value>(&mut self, name: &'a str)
pub fn push_rowed_column<T: Value>(&mut self, name: &'a str)
Adds a new rowed column
§Example
let writer = Writer::new("ImportantTable");
writer.push_rowed_column::<u64>("ID");
Auto Trait Implementations§
impl<'a> Freeze for Writer<'a>
impl<'a> RefUnwindSafe for Writer<'a>
impl<'a> Send for Writer<'a>
impl<'a> Sync for Writer<'a>
impl<'a> Unpin for Writer<'a>
impl<'a> UnwindSafe for Writer<'a>
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