Skip to main content

Header

Struct Header 

Source
pub(crate) struct Header<'a>(&'a str);
Expand description

The desired header text of a document.

The header of a document is the comment block at the very top that is followed by at least one blank line. A comment block directly above the first entry belongs to that entry.

Tuple Fields§

§0: &'a str

Implementations§

Source§

impl<'a> Header<'a>

Source

pub(crate) fn new(text: &'a str) -> Self

A header from text, ignoring blank lines at its end.

Source

pub(crate) fn block(self) -> String

The header followed by one blank line, or an empty string when there is no header.

Source

pub(crate) fn applied_to( self, current: &str, existing: Existing, ) -> Option<Applied<'_>>

The leading text current becomes: its header block replaced by this header, or this header put in front when it has none or the block is kept. None when there is no header or nothing changes.

Source

pub(crate) fn applied_to_parts<'c>( self, root: &str, first: &'c str, existing: Existing, ) -> Option<Applied<'c>>

Like applied_to for the text first that follows root, without joining the two when root is empty.

Source

fn changed_from(self, current: &str, existing: Existing) -> Option<usize>

Where the text after the old header block starts in current, or None when there is no header or current already starts with it. A document that holds only the header counts, with or without a blank line after it.

Source

fn block_len(text: &str) -> usize

The length of the header block at the start of text, including the blank lines after it. Zero when the top block has no blank line after it.

Source

fn is_blank(line: &str) -> bool

Trait Implementations§

Source§

impl<'a> Clone for Header<'a>

Source§

fn clone(&self) -> Header<'a>

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<'a> Copy for Header<'a>

Source§

impl<'a> Debug for Header<'a>

Source§

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

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<'a> Freeze for Header<'a>

§

impl<'a> RefUnwindSafe for Header<'a>

§

impl<'a> Send for Header<'a>

§

impl<'a> Sync for Header<'a>

§

impl<'a> Unpin for Header<'a>

§

impl<'a> UnsafeUnpin for Header<'a>

§

impl<'a> UnwindSafe for Header<'a>

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. 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> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

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

Source§

type Error = !

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.