Expand description
Markdown formatting for rustdoc.
This module implements markdown formatting through the pulldown-cmark library.
#![feature(rustc_private)]
extern crate rustc_span;
use rustc_span::edition::Edition;
use rustdoc::html::markdown::{HeadingOffset, IdMap, Markdown, ErrorCodes};
let s = "My *markdown* _text_";
let mut id_map = IdMap::new();
let md = Markdown {
content: s,
links: &[],
ids: &mut id_map,
error_codes: ErrorCodes::Yes,
edition: Edition::Edition2015,
playground: &None,
heading_offset: HeadingOffset::H2,
};
let html = md.into_string();
// ... something using html
Modules§
- footnotes π
- Markdown footnote handling.
Structs§
- Code
Blocks π - Adds syntax highlighting and playground Run buttons to Rust code blocks.
- Extra
Info π - Heading
Links π - Make headings links with anchor IDs and build up TOC.
- IdMap
- Indices π
- Lang
String π - Link
Replacer π - Link
Replacer πInner - Make headings links with anchor IDs and build up TOC.
- Markdown
- When
to_string
is called, this struct will emit the HTML corresponding to the rendered version of the contained markdown string. - Markdown
Item πInfo - A tuple struct like
Markdown
that renders the markdown escaping HTML tags and includes no paragraph tags. - Markdown
Link π - Markdown
Summary πLine - A tuple struct like
Markdown
that renders only the first paragraph. - Markdown
With πToc - A struct like
Markdown
that renders the markdown with a table of contents. - MdRel
Line π - A newtype that represents a relative line number in Markdown.
- Playground
- Rust
Code πBlock - Spanned
Link πReplacer - Summary
Line π - Extracts just the first paragraph.
- Table
Wrapper π - Wrap HTML tables into
<div>
to prevent having the doc blocks width being too big. - TagIterator π
- This is the parser for fenced codeblocks attributes. It implements the following eBNF:
Enums§
- Error
Codes - Heading
Offset - Ignore π
- Lang
String πToken - Line π
- Controls whether a line will be hidden or shown in HTML output.
- Markdown
Link πRange
Constants§
- MAX_
HEADER_ πLEVEL
Functions§
- check_
if_ πallowed_ tag - find_
codes π - find_
testable_ πcode - html_
text_ πfrom_ events - is_
bareword_ πchar - is_
default_ πid - is_
forbidden_ πtag - is_
leading_ πchar - is_
separator π - map_
line π - This function is used to handle the βhidden linesβ (ie starting with
#
) in doctests. It also transforms##
back into#
. - markdown_
links π - markdown_
summary_ πwith_ limit - Renders a subset of Markdown in the first paragraph of the provided Markdown.
- plain_
text_ πfrom_ events - plain_
text_ πsummary - Renders the first paragraph of the provided markdown as plain text. Useful for alt-text.
- rust_
code_ πblocks - Returns a range of bytes for each code block in the markdown that is tagged as
rust
or untagged (and assumed to be rust). - short_
markdown_ πsummary - Renders a shortened first paragraph of the given Markdown as a subset of Markdown, making it suitable for contexts like the search index.
- slugify π
- Convert chars from a title for an id.
- summary_
opts π - Options for rendering Markdown in summaries (e.g., in search results).
- main_
body_ πopts - Options for rendering Markdown in the main body of documentation.
Type Aliases§
- Spanned
Event π