Parser

Struct Parser 

Source
pub struct Parser;
Expand description

The OneNote file parser.

Use Parser::parse_notebook to load a notebook from a .onetoc2 file or Parser::parse_section to load a single .one section. These methods expect OneDrive downloads (FSSHTTP packaging) and will return an error if the input is not the expected file type.

§Thread safety

The parser is stateless and can be shared across threads.

Implementations§

Source§

impl Parser

Source

pub fn new() -> Parser

Create a new OneNote file parser.

The parser holds no state; reuse a single instance across multiple parses if desired.

Source

pub fn parse_notebook(&self, path: &Path) -> Result<Notebook>

Parse a OneNote notebook.

The path argument must point to a .onetoc2 file. This will parse the table of contents of the notebook as well as all contained sections from the folder that the table of contents file is in.

Returns ErrorKind::NotATocFile if the file is not a notebook table of contents.

Source

pub fn parse_section_buffer( &self, data: &[u8], file_name: &Path, ) -> Result<Section>

Parse a OneNote section buffer.

The data argument must contain a OneNote section. The file_name is used to populate section metadata and error messages.

Returns ErrorKind::NotASectionFile if the buffer does not contain a section file.

Source

pub fn parse_section(&self, path: &Path) -> Result<Section>

Parse a OneNote section file.

The path argument must point to a .one file that contains a OneNote section.

Returns ErrorKind::NotASectionFile if the file does not contain a section.

Trait Implementations§

Source§

impl Default for Parser

Source§

fn default() -> Self

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

Auto Trait Implementations§

§

impl Freeze for Parser

§

impl RefUnwindSafe for Parser

§

impl Send for Parser

§

impl Sync for Parser

§

impl Unpin for Parser

§

impl UnwindSafe for Parser

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> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
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.