Struct pulldown_cmark_to_cmark::State
source · [−]pub struct State<'a> {
pub newlines_before_start: usize,
pub list_stack: Vec<Option<u64>>,
pub padding: Vec<Cow<'a, str>>,
pub table_alignments: Vec<Alignment>,
pub table_headers: Vec<String>,
pub text_for_header: Option<String>,
pub is_in_code_block: bool,
pub last_was_html: bool,
pub last_was_text_without_trailing_newline: bool,
pub current_shortcut_text: Option<String>,
pub shortcuts: Vec<(String, String, String)>,
}
Expand description
The state of the cmark_resume()
and cmark_resume_with_options()
functions.
This does not only allow introspection, but enables the user
to halt the serialization at any time, and resume it later.
Fields
newlines_before_start: usize
The amount of newlines to insert after Event::Start(...)
list_stack: Vec<Option<u64>>
The lists and their types for which we have seen a Event::Start(List(...))
tag
padding: Vec<Cow<'a, str>>
The computed padding and prefix to print after each newline.
This changes with the level of BlockQuote
and List
events.
table_alignments: Vec<Alignment>
Keeps the current table alignments, if we are currently serializing a table.
table_headers: Vec<String>
Keeps the current table headers, if we are currently serializing a table.
text_for_header: Option<String>
The last seen text when serializing a header
is_in_code_block: bool
Is set while we are handling text in a code block
last_was_html: bool
True if the last event was html. Used to inject additional newlines to support markdown inside of HTML tags.
last_was_text_without_trailing_newline: bool
True if the last event was text and the text does not have trailing newline. Used to inject additional newlines before code block end fence.
current_shortcut_text: Option<String>
Keeps track of the last seen shortcut/link
shortcuts: Vec<(String, String, String)>
A list of shortcuts seen so far for later emission
Implementations
Trait Implementations
sourceimpl<'a> Ord for State<'a>
impl<'a> Ord for State<'a>
1.21.0 · sourcefn max(self, other: Self) -> Self
fn max(self, other: Self) -> Self
Compares and returns the maximum of two values. Read more
1.21.0 · sourcefn min(self, other: Self) -> Self
fn min(self, other: Self) -> Self
Compares and returns the minimum of two values. Read more
1.50.0 · sourcefn clamp(self, min: Self, max: Self) -> Selfwhere
Self: PartialOrd<Self>,
fn clamp(self, min: Self, max: Self) -> Selfwhere
Self: PartialOrd<Self>,
Restrict a value to a certain interval. Read more
sourceimpl<'a> PartialEq<State<'a>> for State<'a>
impl<'a> PartialEq<State<'a>> for State<'a>
sourceimpl<'a> PartialOrd<State<'a>> for State<'a>
impl<'a> PartialOrd<State<'a>> for State<'a>
sourcefn partial_cmp(&self, other: &State<'a>) -> Option<Ordering>
fn partial_cmp(&self, other: &State<'a>) -> Option<Ordering>
This method returns an ordering between self
and other
values if one exists. Read more
1.0.0 · sourcefn lt(&self, other: &Rhs) -> bool
fn lt(&self, other: &Rhs) -> bool
This method tests less than (for self
and other
) and is used by the <
operator. Read more
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
impl<'a> Eq for State<'a>
impl<'a> StructuralEq for State<'a>
impl<'a> StructuralPartialEq for State<'a>
Auto Trait Implementations
impl<'a> RefUnwindSafe for State<'a>
impl<'a> Send for State<'a>
impl<'a> Sync for State<'a>
impl<'a> Unpin for State<'a>
impl<'a> UnwindSafe for State<'a>
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more