1using System.Collections.Generic;
3using System.Threading.Tasks;
18 public readonly StringBuilder
Output;
29 : this(new StringBuilder())
47 : this(new StringBuilder(),
Document)
81 if (!Inclusion && this.Document.
TryGetMetaData(
"BODYONLY", out KeyValuePair<string, bool>[] Values))
93 if (this.Document.NeedsToDisplayFootnotes)
99 this.Document = DocBak;
107 return Task.CompletedTask;
115 return Task.CompletedTask;
123 return Task.CompletedTask;
132 return this.Output.ToString();
162 IEnumerable<MarkdownElement> Children = Element.
Children;
164 if (!(Children is
null))
177 if (Element.
Child is
null)
178 return Task.CompletedTask;
183 #region Span Elements
309 public abstract Task
Render(Model.SpanElements.Multimedia Element);
349 #region Block elements
Helps with parsing of commong data types.
static bool TryParse(string s, out double Value)
Tries to decode a string encoded double.
Contains a markdown document. This markdown document class supports original markdown,...
bool TryGetMetaData(string Key, out KeyValuePair< string, bool >[] Value)
Tries to get a meta-data value given its key.
IEnumerable< MarkdownElement > Elements
Markdown elements making up the document.
Represents a block quote in a markdown document.
Represents a bullet list in a markdown document.
Represents a center-aligned set of blocks in a markdown document.
Represents a code block in a markdown document.
Represents a definition list in a markdown document.
Represents inserted blocks in a markdown document.
Represents a block of HTML in a markdown document.
Represents inserted blocks in a markdown document.
Represents a left-aligned set of blocks in a markdown document.
Represents a margin-aligned set of blocks in a markdown document.
Represents a nested block with no special formatting rules in a markdown document.
Represents a numbered item in an ordered list.
Represents a numbered list in a markdown document.
Represents a paragraph in a markdown document.
Represents a right-aligned set of blocks in a markdown document.
Represents a sequence of sections.
Represents a table in a markdown document.
Represents a task item in a task list.
Represents a task list in a markdown document.
Represents an unnumbered item in an ordered list.
Abstract base class for all markdown elements with a variable number of child elements.
override IEnumerable< MarkdownElement > Children
Any children of the element.
Abstract base class for all markdown elements.
abstract Task Render(IRenderer Output)
Renders the element.
virtual IEnumerable< MarkdownElement > Children
Any children of the element.
Abstract base class for all markdown elements with one child element.
MarkdownElement Child
Child element.
Represents an HTML entity.
Represents an HTML entity in Unicode format.
Abstract base class for Markdown renderers.
abstract Task Render(Header Element)
Renders Element .
abstract Task Render(UnnumberedItem Element)
Renders Element .
abstract Task Render(NestedBlock Element)
Renders Element .
abstract Task Render(CommentBlock Element)
Renders Element .
abstract Task Render(DeleteBlocks Element)
Renders Element .
virtual Task RenderDocumentHeader()
Renders the document header.
abstract Task Render(HtmlBlock Element)
Renders Element .
abstract Task Render(DefinitionDescriptions Element)
Renders Element .
abstract Task Render(Underline Element)
Renders Element .
abstract Task Render(Paragraph Element)
Renders Element .
Renderer(StringBuilder Output, MarkdownDocument Document)
Abstract base class for Markdown renderers.
abstract Task Render(SubScript Element)
Renders Element .
abstract Task Render(InlineText Element)
Renders Element .
abstract Task Render(AutomaticLinkMail Element)
Renders Element .
abstract Task Render(BulletList Element)
Renders Element .
readonly StringBuilder Output
Renderer output.
virtual Task RenderFootnotes()
Renders footnotes.
Task RenderChild(MarkdownElementSingleChild Element)
Renders the child of Element .
abstract Task Render(NumberedList Element)
Renders Element .
abstract Task Render(Table Element)
Renders Element .
abstract Task Render(SectionSeparator Element)
Renders Element .
abstract Task Render(InsertBlocks Element)
Renders Element .
async Task RenderChildren(MarkdownElementChildren Element)
Renders the children of Element .
abstract Task Render(BlockQuote Element)
Renders Element .
abstract Task Render(DefinitionTerms Element)
Renders Element .
virtual Task RenderDocumentFooter()
Renders the document header.
abstract Task Render(Insert Element)
Renders Element .
abstract Task Render(StrikeThrough Element)
Renders Element .
abstract Task Render(DetailsReference Element)
Renders Element .
void Clear()
Clears the underlying StringBuilder.
abstract Task Render(HorizontalRule Element)
Renders Element .
abstract Task Render(MultimediaReference Element)
Renders Element .
virtual async Task RenderDocument(MarkdownDocument Document, bool Inclusion)
Renders a document.
Renderer(MarkdownDocument Document)
Abstract base class for Markdown renderers.
abstract Task Render(NumberedItem Element)
Renders Element .
Renderer(StringBuilder Output)
Abstract base class for Markdown renderers.
async Task RenderChildren(MarkdownElement Element)
Renders the children of Element .
abstract Task Render(InvisibleBreak Element)
Renders Element .
abstract Task Render(HtmlEntity Element)
Renders Element .
abstract Task Render(FootnoteReference Element)
Renders Element .
abstract Task Render(LeftAligned Element)
Renders Element .
abstract Task Render(MarginAligned Element)
Renders Element .
abstract Task Render(InlineScript Element)
Renders Element .
abstract Task Render(InlineHTML Element)
Renders Element .
override string ToString()
Returns the renderer output.
abstract Task Render(EmojiReference Element)
Renders Element .
abstract Task Render(Abbreviation Element)
Renders Element .
abstract Task Render(MetaReference Element)
Renders Element .
abstract Task Render(LineBreak Element)
Renders Element .
abstract Task Render(Sections Element)
Renders Element .
abstract Task Render(Emphasize Element)
Renders Element .
virtual void Dispose()
Disposes of the renderer.
abstract Task Render(DefinitionList Element)
Renders Element .
abstract Task Render(Link Element)
Renders Element .
abstract Task Render(Delete Element)
Renders Element .
abstract Task Render(TaskList Element)
Renders Element .
abstract Task Render(HtmlEntityUnicode Element)
Renders Element .
MarkdownDocument Document
Reference to Markdown document being processed.
abstract Task Render(TaskItem Element)
Renders Element .
abstract Task Render(Footnote Element)
Renders Element .
abstract Task Render(CenterAligned Element)
Renders Element .
abstract Task Render(RightAligned Element)
Renders Element .
Renderer()
Abstract base class for Markdown renderers.
abstract Task Render(CodeBlock Element)
Renders Element .
abstract Task Render(InlineCode Element)
Renders Element .
abstract Task Render(HashTag Element)
Renders Element .
abstract Task Render(SuperScript Element)
Renders Element .
abstract Task Render(LinkReference Element)
Renders Element .
abstract Task Render(AutomaticLinkUrl Element)
Renders Element .
abstract Task Render(Model.SpanElements.Multimedia Element)
Renders Element .
abstract Task Render(Strong Element)
Renders Element .
Interface for Markdown renderers.