Skip to main content

Options

Struct Options 

Source
pub struct Options(/* private fields */);
Expand description

Option struct containing flags for enabling extra features that are not part of the CommonMark spec.

Implementations§

Source§

impl Options

Source

pub const ENABLE_TABLES: Self

Source

pub const ENABLE_FOOTNOTES: Self

GitHub-compatible footnote syntax.

Footnotes are referenced with the syntax [^IDENT], and defined with an identifier followed by a colon at top level.


Footnote referenced [^1].

[^1]: footnote defined

Footnote referenced 1.


  1. footnote defined 

Source

pub const ENABLE_STRIKETHROUGH: Self

Source

pub const ENABLE_TASKLISTS: Self

Source

pub const ENABLE_SMART_PUNCTUATION: Self

Enables replacement of ASCII punctuation characters with Unicode ligatures and smart quotes.

This includes replacing -- with , --- with , ... with , "quote" with “quote”, and 'quote' with ‘quote’.

The replacement takes place during the parsing of the document.

Source

pub const ENABLE_HEADING_ATTRIBUTES: Self

Extension to allow headings to have ID and classes.

# text { #id .class1 .class2 myattr other_attr=myvalue } is interpreted as a level 1 heading with the content text, ID id, classes class1 and class2 and custom attributes myattr (without value) and other_attr with value myvalue. Note that ID, classes, and custom attributes should be space-separated.

Source

pub const ENABLE_YAML_STYLE_METADATA_BLOCKS: Self

Metadata blocks in YAML style, i.e.:

  • starting with a --- line
  • ending with a --- or ... line
Source

pub const ENABLE_PLUSES_DELIMITED_METADATA_BLOCKS: Self

Metadata blocks delimited by:

  • +++ line at start
  • +++ line at end
Source

pub const ENABLE_OLD_FOOTNOTES: Self

Older footnote syntax. This flag implies ENABLE_FOOTNOTES, changing it to use an older syntax instead of the new, default, GitHub-compatible syntax.

New syntax is different from the old syntax regarding indentation, nesting, and footnote references with no definition:

[^1]: In new syntax, this is two footnote definitions.
[^2]: In old syntax, this is a single footnote definition with two lines.

[^3]:

    In new syntax, this is a footnote with two paragraphs.

    In old syntax, this is a footnote followed by a code block.

In new syntax, this undefined footnote definition renders as
literal text [^4]. In old syntax, it creates a dangling link.
Source

pub const ENABLE_MATH: Self

With this feature enabled, two events Event::InlineMath and Event::DisplayMath are emitted that conventionally contain TeX formulas.

Source

pub const ENABLE_GFM: Self

Misc GitHub Flavored Markdown features not supported in CommonMark. The following features are currently behind this tag:

  • Blockquote tags ([!NOTE], [!TIP], [!IMPORTANT], [!WARNING], [!CAUTION]).
Source

pub const ENABLE_DEFINITION_LIST: Self

Commonmark-HS-Extensions compatible definition lists.

title 1
  : definition 1
title 2
  : definition 2
Source

pub const ENABLE_SUPERSCRIPT: Self

Source

pub const ENABLE_SUBSCRIPT: Self

Obsidian-style Wikilinks.

Source§

impl Options

Source

pub const fn empty() -> Self

Get a flags value with all bits unset.

Examples found in repository?
examples/string-to-string.rs (line 9)
3fn main() {
4    let markdown_input: &str = "Hello world, this is a ~~complicated~~ *very simple* example.";
5    println!("Parsing the following markdown string:\n{}", markdown_input);
6
7    // Set up options and parser. Strikethroughs are not part of the CommonMark standard
8    // and we therefore must enable it explicitly.
9    let mut options = Options::empty();
10    options.insert(Options::ENABLE_STRIKETHROUGH);
11    let parser = Parser::new_ext(markdown_input, options);
12
13    // Write to String buffer.
14    let mut html_output: String = String::with_capacity(markdown_input.len() * 3 / 2);
15    html::push_html(&mut html_output, parser);
16
17    // Check that the output is what we expected.
18    let expected_html: &str =
19        "<p>Hello world, this is a <del>complicated</del> <em>very simple</em> example.</p>\n";
20    assert_eq!(expected_html, &html_output);
21
22    // Write result to stdout.
23    println!("\nHTML output:\n{}", &html_output);
24}
More examples
Hide additional examples
examples/event-filter.rs (line 11)
5fn main() {
6    let markdown_input: &str = "This is Peter on ![holiday in Greece](pearl_beach.jpg).";
7    println!("Parsing the following markdown string:\n{}", markdown_input);
8
9    // Set up parser. We can treat is as any other iterator. We replace Peter by John
10    // and image by its alt text.
11    let parser = Parser::new_ext(markdown_input, Options::empty())
12        .map(|event| match event {
13            Event::Text(text) => Event::Text(text.replace("Peter", "John").into()),
14            _ => event,
15        })
16        .filter(|event| match event {
17            Event::Start(Tag::Image { .. }) | Event::End(TagEnd::Image) => false,
18            _ => true,
19        });
20
21    // Write to anything implementing the `Write` trait. This could also be a file
22    // or network socket.
23    let stdout = std::io::stdout();
24    let mut handle = stdout.lock();
25    handle.write_all(b"\nHTML output:\n").unwrap();
26    html::write_html_io(&mut handle, parser).unwrap();
27}
examples/broken-link-callbacks.rs (line 22)
3fn main() {
4    let input: &str = "Hello world, check out [my website][].";
5    println!("Parsing the following markdown string:\n{}", input);
6
7    // Setup callback that sets the URL and title when it encounters
8    // a reference to our home page.
9    let callback = |broken_link: BrokenLink| {
10        if broken_link.reference.as_ref() == "my website" {
11            println!(
12                "Replacing the markdown `{}` of type {:?} with a working link",
13                &input[broken_link.span], broken_link.link_type,
14            );
15            Some(("http://example.com".into(), "my example website".into()))
16        } else {
17            None
18        }
19    };
20
21    // Create a parser with our callback function for broken links.
22    let parser = Parser::new_with_broken_link_callback(input, Options::empty(), Some(callback));
23
24    // Write to String buffer.
25    let mut html_output: String = String::with_capacity(input.len() * 3 / 2);
26    html::push_html(&mut html_output, parser);
27
28    // Check that the output is what we expected.
29    let expected_html: &str =
30        "<p>Hello world, check out <a href=\"http://example.com\" title=\"my example website\">my website</a>.</p>\n";
31    assert_eq!(expected_html, &html_output);
32
33    // Write result to stdout.
34    println!("\nHTML output:\n{}", &html_output);
35}
Source

pub const fn all() -> Self

Get a flags value with all known bits set.

Examples found in repository?
examples/parser-map-tag-print.rs (line 45)
3fn main() {
4    let markdown_input = concat!(
5        "# My Heading\n",
6        "\n",
7        "My paragraph.\n",
8        "\n",
9        "* a\n",
10        "* b\n",
11        "* c\n",
12        "\n",
13        "1. d\n",
14        "2. e\n",
15        "3. f\n",
16        "\n",
17        "> my block quote\n",
18        "\n",
19        "```\n",
20        "my code block\n",
21        "```\n",
22        "\n",
23        "*emphasis*\n",
24        "**strong**\n",
25        "~~strikethrough~~\n",
26        "[My Link](http://example.com)\n",
27        "![My Image](http://example.com/image.jpg)\n",
28        "\n",
29        "| a | b |\n",
30        "| - | - |\n",
31        "| c | d |\n",
32        "\n",
33        "hello[^1]\n",
34        "[^1]: my footnote\n",
35    );
36    println!(
37        "\nParsing the following markdown string:\n{}\n",
38        markdown_input
39    );
40
41    // Set up the parser. We can treat is as any other iterator.
42    // For each event, we print its details, such as the tag or string.
43    // This filter simply returns the same event without any changes;
44    // you can compare the `event-filter` example which alters the output.
45    let parser = Parser::new_ext(markdown_input, Options::all()).map(|event| {
46        match &event {
47            Event::Start(tag) => match tag {
48                Tag::HtmlBlock => println!("HtmlBlock"),
49                Tag::Heading {
50                    level,
51                    id,
52                    classes,
53                    attrs,
54                } => println!(
55                    "Heading heading_level: {} fragment identifier: {:?} classes: {:?} attrs: {:?}",
56                    level, id, classes, attrs
57                ),
58                Tag::Paragraph => println!("Paragraph"),
59                Tag::List(ordered_list_first_item_number) => println!(
60                    "List ordered_list_first_item_number: {:?}",
61                    ordered_list_first_item_number
62                ),
63                Tag::DefinitionList => println!("Definition list"),
64                Tag::DefinitionListTitle => println!("Definition title (definition list item)"),
65                Tag::DefinitionListDefinition => println!("Definition (definition list item)"),
66                Tag::Item => println!("Item (this is a list item)"),
67                Tag::Emphasis => println!("Emphasis (this is a span tag)"),
68                Tag::Superscript => println!("Superscript (this is a span tag)"),
69                Tag::Subscript => println!("Subscript (this is a span tag)"),
70                Tag::Strong => println!("Strong (this is a span tag)"),
71                Tag::Strikethrough => println!("Strikethrough (this is a span tag)"),
72                Tag::BlockQuote(kind) => println!("BlockQuote ({:?})", kind),
73                Tag::CodeBlock(code_block_kind) => {
74                    println!("CodeBlock code_block_kind: {:?}", code_block_kind)
75                }
76                Tag::Link {
77                    link_type,
78                    dest_url,
79                    title,
80                    id,
81                } => println!(
82                    "Link link_type: {:?} url: {} title: {} id: {}",
83                    link_type, dest_url, title, id
84                ),
85                Tag::Image {
86                    link_type,
87                    dest_url,
88                    title,
89                    id,
90                } => println!(
91                    "Image link_type: {:?} url: {} title: {} id: {}",
92                    link_type, dest_url, title, id
93                ),
94                Tag::Table(column_text_alignment_list) => println!(
95                    "Table column_text_alignment_list: {:?}",
96                    column_text_alignment_list
97                ),
98                Tag::TableHead => println!("TableHead (contains TableRow tags"),
99                Tag::TableRow => println!("TableRow (contains TableCell tags)"),
100                Tag::TableCell => println!("TableCell (contains inline tags)"),
101                Tag::FootnoteDefinition(label) => println!("FootnoteDefinition label: {}", label),
102                Tag::MetadataBlock(kind) => println!("MetadataBlock: {:?}", kind),
103            },
104            _ => (),
105        };
106        event
107    });
108
109    let mut html_output = String::new();
110    pulldown_cmark::html::push_html(&mut html_output, parser);
111    println!("\nHTML output:\n{}\n", &html_output);
112}
Source

pub const fn bits(&self) -> u32

Get the underlying bits value.

The returned value is exactly the bits set in this flags value.

Source

pub const fn from_bits(bits: u32) -> Option<Self>

Convert from a bits value.

This method will return None if any unknown bits are set.

Source

pub const fn from_bits_truncate(bits: u32) -> Self

Convert from a bits value, unsetting any unknown bits.

Source

pub const fn from_bits_retain(bits: u32) -> Self

Convert from a bits value exactly.

Source

pub fn from_name(name: &str) -> Option<Self>

Get a flags value with the bits of a flag with the given name set.

This method will return None if name is empty or doesn’t correspond to any named flag.

Source

pub const fn is_empty(&self) -> bool

Whether all bits in self are unset.

Source

pub const fn is_all(&self) -> bool

Whether all known bits in this flags value are set.

Source

pub const fn intersects(&self, other: Self) -> bool

Whether any set bits in other are also set in self.

Source

pub const fn contains(&self, other: Self) -> bool

Whether all set bits in other are also set in self.

Source

pub fn insert(&mut self, other: Self)

The bitwise or (|) of the bits in self and other.

Examples found in repository?
examples/string-to-string.rs (line 10)
3fn main() {
4    let markdown_input: &str = "Hello world, this is a ~~complicated~~ *very simple* example.";
5    println!("Parsing the following markdown string:\n{}", markdown_input);
6
7    // Set up options and parser. Strikethroughs are not part of the CommonMark standard
8    // and we therefore must enable it explicitly.
9    let mut options = Options::empty();
10    options.insert(Options::ENABLE_STRIKETHROUGH);
11    let parser = Parser::new_ext(markdown_input, options);
12
13    // Write to String buffer.
14    let mut html_output: String = String::with_capacity(markdown_input.len() * 3 / 2);
15    html::push_html(&mut html_output, parser);
16
17    // Check that the output is what we expected.
18    let expected_html: &str =
19        "<p>Hello world, this is a <del>complicated</del> <em>very simple</em> example.</p>\n";
20    assert_eq!(expected_html, &html_output);
21
22    // Write result to stdout.
23    println!("\nHTML output:\n{}", &html_output);
24}
Source

pub fn remove(&mut self, other: Self)

The intersection of self with the complement of other (&!).

This method is not equivalent to self & !other when other has unknown bits set. remove won’t truncate other, but the ! operator will.

Source

pub fn toggle(&mut self, other: Self)

The bitwise exclusive-or (^) of the bits in self and other.

Source

pub fn set(&mut self, other: Self, value: bool)

Call insert when value is true or remove when value is false.

Source

pub const fn intersection(self, other: Self) -> Self

The bitwise and (&) of the bits in self and other.

Source

pub const fn union(self, other: Self) -> Self

The bitwise or (|) of the bits in self and other.

Source

pub const fn difference(self, other: Self) -> Self

The intersection of self with the complement of other (&!).

This method is not equivalent to self & !other when other has unknown bits set. difference won’t truncate other, but the ! operator will.

Source

pub const fn symmetric_difference(self, other: Self) -> Self

The bitwise exclusive-or (^) of the bits in self and other.

Source

pub const fn complement(self) -> Self

The bitwise negation (!) of the bits in self, truncating the result.

Source§

impl Options

Source

pub const fn iter(&self) -> Iter<Options>

Yield a set of contained flags values.

Each yielded flags value will correspond to a defined named flag. Any unknown bits will be yielded together as a final flags value.

Source

pub const fn iter_names(&self) -> IterNames<Options>

Yield a set of contained named flags values.

This method is like iter, except only yields bits in contained named flags. Any unknown bits, or bits not corresponding to a contained flag will not be yielded.

Trait Implementations§

Source§

impl Binary for Options

Source§

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

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

impl BitAnd for Options

Source§

fn bitand(self, other: Self) -> Self

The bitwise and (&) of the bits in self and other.

Source§

type Output = Options

The resulting type after applying the & operator.
Source§

impl BitAndAssign for Options

Source§

fn bitand_assign(&mut self, other: Self)

The bitwise and (&) of the bits in self and other.

Source§

impl BitOr for Options

Source§

fn bitor(self, other: Options) -> Self

The bitwise or (|) of the bits in self and other.

Source§

type Output = Options

The resulting type after applying the | operator.
Source§

impl BitOrAssign for Options

Source§

fn bitor_assign(&mut self, other: Self)

The bitwise or (|) of the bits in self and other.

Source§

impl BitXor for Options

Source§

fn bitxor(self, other: Self) -> Self

The bitwise exclusive-or (^) of the bits in self and other.

Source§

type Output = Options

The resulting type after applying the ^ operator.
Source§

impl BitXorAssign for Options

Source§

fn bitxor_assign(&mut self, other: Self)

The bitwise exclusive-or (^) of the bits in self and other.

Source§

impl Clone for Options

Source§

fn clone(&self) -> Options

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 Copy for Options

Source§

impl Debug for Options

Source§

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

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

impl Eq for Options

Source§

impl Extend<Options> for Options

Source§

fn extend<T: IntoIterator<Item = Self>>(&mut self, iterator: T)

The bitwise or (|) of the bits in each flags value.

Source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
Source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
Source§

impl Flags for Options

Source§

const FLAGS: &'static [Flag<Options>]

The set of defined flags.
Source§

type Bits = u32

The underlying bits type.
Source§

fn bits(&self) -> u32

Get the underlying bits value. Read more
Source§

fn from_bits_retain(bits: u32) -> Options

Convert from a bits value exactly.
Source§

fn empty() -> Self

Get a flags value with all bits unset.
Source§

fn all() -> Self

Get a flags value with all known bits set.
Source§

fn known_bits(&self) -> Self::Bits

Get the known bits from a flags value.
Source§

fn unknown_bits(&self) -> Self::Bits

Get the unknown bits from a flags value.
Source§

fn contains_unknown_bits(&self) -> bool

This method will return true if any unknown bits are set.
Source§

fn from_bits(bits: Self::Bits) -> Option<Self>

Convert from a bits value. Read more
Source§

fn from_bits_truncate(bits: Self::Bits) -> Self

Convert from a bits value, unsetting any unknown bits.
Source§

fn from_name(name: &str) -> Option<Self>

Get a flags value with the bits of a flag with the given name set. Read more
Source§

fn iter(&self) -> Iter<Self>

Yield a set of contained flags values. Read more
Source§

fn iter_names(&self) -> IterNames<Self>

Yield a set of contained named flags values. Read more
Source§

fn iter_defined_names() -> IterDefinedNames<Self>

Yield a set of all named flags defined by Self::FLAGS.
Source§

fn is_empty(&self) -> bool

Whether all bits in this flags value are unset.
Source§

fn is_all(&self) -> bool

Whether all known bits in this flags value are set.
Source§

fn intersects(&self, other: Self) -> bool
where Self: Sized,

Whether any set bits in other are also set in self.
Source§

fn contains(&self, other: Self) -> bool
where Self: Sized,

Whether all set bits in other are also set in self.
Source§

fn truncate(&mut self)
where Self: Sized,

Remove any unknown bits from the flags.
Source§

fn insert(&mut self, other: Self)
where Self: Sized,

The bitwise or (|) of the bits in self and other.
Source§

fn remove(&mut self, other: Self)
where Self: Sized,

The intersection of self with the complement of other (&!). Read more
Source§

fn toggle(&mut self, other: Self)
where Self: Sized,

The bitwise exclusive-or (^) of the bits in self and other.
Source§

fn set(&mut self, other: Self, value: bool)
where Self: Sized,

Call Flags::insert when value is true or Flags::remove when value is false.
Source§

fn clear(&mut self)
where Self: Sized,

Unsets all bits in the flags.
Source§

fn intersection(self, other: Self) -> Self

The bitwise and (&) of the bits in self and other.
Source§

fn union(self, other: Self) -> Self

The bitwise or (|) of the bits in self and other.
Source§

fn difference(self, other: Self) -> Self

The intersection of self with the complement of other (&!). Read more
Source§

fn symmetric_difference(self, other: Self) -> Self

The bitwise exclusive-or (^) of the bits in self and other.
Source§

fn complement(self) -> Self

The bitwise negation (!) of the bits in self, truncating the result.
Source§

impl FromIterator<Options> for Options

Source§

fn from_iter<T: IntoIterator<Item = Self>>(iterator: T) -> Self

The bitwise or (|) of the bits in each flags value.

Source§

impl Hash for Options

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl IntoIterator for Options

Source§

type Item = Options

The type of the elements being iterated over.
Source§

type IntoIter = Iter<Options>

Which kind of iterator are we turning this into?
Source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
Source§

impl LowerHex for Options

Source§

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

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

impl Not for Options

Source§

fn not(self) -> Self

The bitwise negation (!) of the bits in self, truncating the result.

Source§

type Output = Options

The resulting type after applying the ! operator.
Source§

impl Octal for Options

Source§

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

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

impl Ord for Options

Source§

fn cmp(&self, other: &Options) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 (const: unstable) · Source§

fn max(self, other: Self) -> Self
where Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 (const: unstable) · Source§

fn min(self, other: Self) -> Self
where Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 (const: unstable) · Source§

fn clamp(self, min: Self, max: Self) -> Self
where Self: Sized,

Restrict a value to a certain interval. Read more
Source§

impl PartialEq for Options

Source§

fn eq(&self, other: &Options) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl PartialOrd for Options

Source§

fn partial_cmp(&self, other: &Options) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 (const: unstable) · Source§

fn lt(&self, other: &Rhs) -> bool

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 (const: unstable) · Source§

fn le(&self, other: &Rhs) -> bool

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 (const: unstable) · Source§

fn gt(&self, other: &Rhs) -> bool

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 (const: unstable) · Source§

fn ge(&self, other: &Rhs) -> bool

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
Source§

impl PublicFlags for Options

Source§

type Primitive = u32

The type of the underlying storage.
Source§

type Internal = InternalBitFlags

The type of the internal field on the generated flags type.
Source§

impl StructuralPartialEq for Options

Source§

impl Sub for Options

Source§

fn sub(self, other: Self) -> Self

The intersection of self with the complement of other (&!).

This method is not equivalent to self & !other when other has unknown bits set. difference won’t truncate other, but the ! operator will.

Source§

type Output = Options

The resulting type after applying the - operator.
Source§

impl SubAssign for Options

Source§

fn sub_assign(&mut self, other: Self)

The intersection of self with the complement of other (&!).

This method is not equivalent to self & !other when other has unknown bits set. difference won’t truncate other, but the ! operator will.

Source§

impl UpperHex for Options

Source§

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

Formats the value using the given formatter. Read more

Auto Trait Implementations§

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 = 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.