stuckliste

Struct Bom

Source
pub struct Bom { /* private fields */ }
Expand description

BOM file low-level representation.

Contains regular and named blocks.

Implementations§

Source§

impl Bom

Source

pub fn new() -> Self

Create a new empty BOM.

Source

pub fn blocks(&self) -> &Blocks

Get all regular blocks.

Source

pub fn named_blocks(&self) -> &NamedBlocks

Get all named blocks.

Source

pub fn write_named<N, W, C, T>( &mut self, name: N, writer: W, value: &T, context: &mut C, ) -> Result<(), Error>
where N: Into<CString>, W: Write + Seek, T: BlockWrite<C>,

Write value into a new named block.

Source

pub fn get_named(&self, name: &CStr) -> Option<u32>

Get block index by name.

Source

pub fn read_named<C, T: BlockRead<C>>( &mut self, name: &CStr, file: &[u8], context: &mut C, ) -> Result<T, Error>

Read a value of type T from a named block.

Source

pub fn read_regular<C, T: BlockRead<C>>( &mut self, block_index: u32, file: &[u8], context: &mut C, ) -> Result<T, Error>

Read a value of type T from a regular block.

Source

pub fn read(file: &[u8]) -> Result<Self, Error>

Read BOM header from file.

Source

pub fn write<W: Write + Seek>(&self, writer: W) -> Result<(), Error>

Write BOM header at the beginning of writer.

This method requires 512 byte to be reserved at the beginning of the file to not overwrite any important data.

Trait Implementations§

Source§

impl Debug for Bom

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for Bom

Source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

§

impl Freeze for Bom

§

impl RefUnwindSafe for Bom

§

impl Send for Bom

§

impl Sync for Bom

§

impl Unpin for Bom

§

impl UnwindSafe for Bom

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.