Function parse_hyperlinks::parser::restructured_text::rst_text2label [−][src]
pub fn rst_text2label(i: &str) -> IResult<&str, (Cow<'_, str>, Cow<'_, str>)>
Parse a RestructuredText reference link.
The caller must guarantee, that
- the parser is at the input start (no bytes exist before).
- the preceding bytes are whitespaces or newline, or
- the preceding bytes are whitespaces or newline, followed by one of:
([<'"
use parse_hyperlinks::parser::Link; use parse_hyperlinks::parser::restructured_text::rst_text2label; use std::borrow::Cow; assert_eq!( rst_text2label("linktext_ abc"), Ok((" abc", (Cow::from("linktext"), Cow::from("linktext")))) ); assert_eq!( rst_text2label("`link text`_ abc"), Ok((" abc", (Cow::from("link text"), Cow::from("link text")))) ); assert_eq!( rst_text2label("`link text<link label_>`_ abc"), Ok((" abc", (Cow::from("link text"), Cow::from("link label")))) ); assert_eq!( rst_text2label("`link text`__ abc"), Ok((" abc", (Cow::from("link text"), Cow::from("_")))) );