APIdia Launch Partner
Top Description Inners Fields Constructors Methods
jdk.internal.org.commonmark.renderer.markdown

public Class CoreMarkdownNodeRenderer

extends AbstractVisitor
implements NodeRenderer
Class Inheritance
All Implemented Interfaces
jdk.internal.org.commonmark.renderer.NodeRenderer
Imports
jdk.internal.org.commonmark.text.AsciiMatcher, .CharMatcher, .Characters, jdk.internal.org.commonmark.node.*, jdk.internal.org.commonmark.renderer.NodeRenderer, java.util.Arrays, .HashSet, .List, .Set, java.util.regex.Matcher, .Pattern

The node renderer that renders all the core nodes (comes last in the order of node renderers).

Note that while sometimes it would be easier to record what kind of syntax was used on parsing (e.g. ATX vs Setext heading), this renderer is intended to also work for documents that were created by directly creating Nodes instead. So in order to support that, it sometimes needs to do a bit more work.

Nested and Inner Type Summary

Modifier and TypeClass and Description
private static class
private static class
CoreMarkdownNodeRenderer.LineBreakVisitor

Visits nodes to check if there are any soft or hard line breaks.

private static class
private static class

Field Summary

Modifier and TypeField and Description
protected final MarkdownNodeRendererContext
private final CharMatcher
private final CharMatcher
private final CharMatcher
private CoreMarkdownNodeRenderer.ListHolder
listHolder

If we're currently within a BulletList or OrderedList, this keeps the context of that list.

private final Pattern
private final AsciiMatcher
private final CharMatcher
private final MarkdownWriter

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
private static boolean
contains(String s, CharMatcher charMatcher)

private static int
private static List<String>
getLines(String literal)

public Set<Class<? extends Node>>
public void
render(Node node)

Implements jdk.internal.org.commonmark.renderer.NodeRenderer.render.

Render the specified node.

private static String
repeat(String s, int count)

public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
protected void
private void
writeLinkLike(String title, String destination, Node node, String opener)

Inherited from jdk.internal.org.commonmark.node.AbstractVisitor:
visitvisitvisit

Field Detail

contextback to summary
protected final MarkdownNodeRendererContext context
linkDestinationEscapeInAngleBracketsback to summary
private final CharMatcher linkDestinationEscapeInAngleBrackets
linkDestinationNeedsAngleBracketsback to summary
private final CharMatcher linkDestinationNeedsAngleBrackets
linkTitleEscapeInQuotesback to summary
private final CharMatcher linkTitleEscapeInQuotes
listHolderback to summary
private CoreMarkdownNodeRenderer.ListHolder listHolder

If we're currently within a BulletList or OrderedList, this keeps the context of that list. It has a parent field so that it can represent a stack (for nested lists).

orderedListMarkerPatternback to summary
private final Pattern orderedListMarkerPattern
textEscapeback to summary
private final AsciiMatcher textEscape
textEscapeInHeadingback to summary
private final CharMatcher textEscapeInHeading
writerback to summary
private final MarkdownWriter writer

Constructor Detail

CoreMarkdownNodeRendererback to summary
public CoreMarkdownNodeRenderer(MarkdownNodeRendererContext context)

Method Detail

containsback to summary
private static boolean contains(String s, CharMatcher charMatcher)
findMaxRunLengthback to summary
private static int findMaxRunLength(String needle, String s)
getLinesback to summary
private static List<String> getLines(String literal)
getNodeTypesback to summary
public Set<Class<? extends Node>> getNodeTypes()

Implements jdk.internal.org.commonmark.renderer.NodeRenderer.getNodeTypes.

Annotations
@Override
renderback to summary
public void render(Node node)

Implements jdk.internal.org.commonmark.renderer.NodeRenderer.render.

Doc from jdk.internal.org.commonmark.renderer.NodeRenderer.render.

Render the specified node.

Annotations
@Override
repeatback to summary
private static String repeat(String s, int count)
visitback to summary
public void visit(Document document)

Overrides jdk.internal.org.commonmark.node.AbstractVisitor.visit.

Implements jdk.internal.org.commonmark.node.Visitor.visit.

Annotations
@Override
visitback to summary
public void visit(ThematicBreak thematicBreak)

Overrides jdk.internal.org.commonmark.node.AbstractVisitor.visit.

Implements jdk.internal.org.commonmark.node.Visitor.visit.

Annotations
@Override
visitback to summary
public void visit(Heading heading)

Overrides jdk.internal.org.commonmark.node.AbstractVisitor.visit.

Implements jdk.internal.org.commonmark.node.Visitor.visit.

Annotations
@Override
visitback to summary
public void visit(IndentedCodeBlock indentedCodeBlock)

Overrides jdk.internal.org.commonmark.node.AbstractVisitor.visit.

Implements jdk.internal.org.commonmark.node.Visitor.visit.

Annotations
@Override
visitback to summary
public void visit(FencedCodeBlock codeBlock)

Overrides jdk.internal.org.commonmark.node.AbstractVisitor.visit.

Implements jdk.internal.org.commonmark.node.Visitor.visit.

Annotations
@Override
visitback to summary
public void visit(HtmlBlock htmlBlock)

Overrides jdk.internal.org.commonmark.node.AbstractVisitor.visit.

Implements jdk.internal.org.commonmark.node.Visitor.visit.

Annotations
@Override
visitback to summary
public void visit(Paragraph paragraph)

Overrides jdk.internal.org.commonmark.node.AbstractVisitor.visit.

Implements jdk.internal.org.commonmark.node.Visitor.visit.

Annotations
@Override
visitback to summary
public void visit(BlockQuote blockQuote)

Overrides jdk.internal.org.commonmark.node.AbstractVisitor.visit.

Implements jdk.internal.org.commonmark.node.Visitor.visit.

Annotations
@Override
visitback to summary
public void visit(BulletList bulletList)

Overrides jdk.internal.org.commonmark.node.AbstractVisitor.visit.

Implements jdk.internal.org.commonmark.node.Visitor.visit.

Annotations
@Override
visitback to summary
public void visit(OrderedList orderedList)

Overrides jdk.internal.org.commonmark.node.AbstractVisitor.visit.

Implements jdk.internal.org.commonmark.node.Visitor.visit.

Annotations
@Override
visitback to summary
public void visit(ListItem listItem)

Overrides jdk.internal.org.commonmark.node.AbstractVisitor.visit.

Implements jdk.internal.org.commonmark.node.Visitor.visit.

Annotations
@Override
visitback to summary
public void visit(Code code)

Overrides jdk.internal.org.commonmark.node.AbstractVisitor.visit.

Implements jdk.internal.org.commonmark.node.Visitor.visit.

Annotations
@Override
visitback to summary
public void visit(Emphasis emphasis)

Overrides jdk.internal.org.commonmark.node.AbstractVisitor.visit.

Implements jdk.internal.org.commonmark.node.Visitor.visit.

Annotations
@Override
visitback to summary
public void visit(StrongEmphasis strongEmphasis)

Overrides jdk.internal.org.commonmark.node.AbstractVisitor.visit.

Implements jdk.internal.org.commonmark.node.Visitor.visit.

Annotations
@Override
visitback to summary
public void visit(Image image)

Overrides jdk.internal.org.commonmark.node.AbstractVisitor.visit.

Implements jdk.internal.org.commonmark.node.Visitor.visit.

Annotations
@Override
visitback to summary
public void visit(HtmlInline htmlInline)

Overrides jdk.internal.org.commonmark.node.AbstractVisitor.visit.

Implements jdk.internal.org.commonmark.node.Visitor.visit.

Annotations
@Override
visitback to summary
public void visit(HardLineBreak hardLineBreak)

Overrides jdk.internal.org.commonmark.node.AbstractVisitor.visit.

Implements jdk.internal.org.commonmark.node.Visitor.visit.

Annotations
@Override
visitback to summary
public void visit(SoftLineBreak softLineBreak)

Overrides jdk.internal.org.commonmark.node.AbstractVisitor.visit.

Implements jdk.internal.org.commonmark.node.Visitor.visit.

Annotations
@Override
visitback to summary
public void visit(Text text)

Overrides jdk.internal.org.commonmark.node.AbstractVisitor.visit.

Implements jdk.internal.org.commonmark.node.Visitor.visit.

Annotations
@Override
visitChildrenback to summary
protected void visitChildren(Node parent)

Overrides jdk.internal.org.commonmark.node.AbstractVisitor.visitChildren.

Doc from jdk.internal.org.commonmark.node.AbstractVisitor.visitChildren.

Visit the child nodes.

Annotations
@Override
writeLinkLikeback to summary
private void writeLinkLike(String title, String destination, Node node, String opener)
jdk.internal.org.commonmark.renderer.markdown back to summary

private Class CoreMarkdownNodeRenderer.BulletListHolder

extends ListHolder
Class Inheritance

Field Summary

Modifier and TypeField and Description
pack-priv final String
Inherited from jdk.internal.org.commonmark.renderer.markdown.CoreMarkdownNodeRenderer.ListHolder:
parent

Constructor Summary

AccessConstructor and Description
public

Field Detail

markerback to summary
pack-priv final String marker

Constructor Detail

BulletListHolderback to summary
public BulletListHolder(CoreMarkdownNodeRenderer.ListHolder parent, BulletList bulletList)
jdk.internal.org.commonmark.renderer.markdown back to summary

private Class CoreMarkdownNodeRenderer.LineBreakVisitor

extends AbstractVisitor
Class Inheritance

Visits nodes to check if there are any soft or hard line breaks.

Field Summary

Modifier and TypeField and Description
private boolean

Constructor Summary

AccessConstructor and Description
private

Method Summary

Modifier and TypeMethod and Description
public boolean
public void
public void
Inherited from jdk.internal.org.commonmark.node.AbstractVisitor:
visitvisitvisitvisitvisitvisitvisitvisitvisitvisitvisitvisitvisitvisitvisitvisitvisitvisitvisitvisitvisitvisitChildren

Field Detail

lineBreakback to summary
private boolean lineBreak

Constructor Detail

LineBreakVisitorback to summary
private LineBreakVisitor()

Method Detail

hasLineBreakback to summary
public boolean hasLineBreak()
visitback to summary
public void visit(SoftLineBreak softLineBreak)

Overrides jdk.internal.org.commonmark.node.AbstractVisitor.visit.

Implements jdk.internal.org.commonmark.node.Visitor.visit.

Annotations
@Override
visitback to summary
public void visit(HardLineBreak hardLineBreak)

Overrides jdk.internal.org.commonmark.node.AbstractVisitor.visit.

Implements jdk.internal.org.commonmark.node.Visitor.visit.

Annotations
@Override
jdk.internal.org.commonmark.renderer.markdown back to summary

private Class CoreMarkdownNodeRenderer.ListHolder

extends Object
Class Inheritance
  • java.lang.Object
  • jdk.internal.org.commonmark.renderer.markdown.CoreMarkdownNodeRenderer.ListHolder
Known Direct Subclasses
jdk.internal.org.commonmark.renderer.markdown.CoreMarkdownNodeRenderer.BulletListHolder, jdk.internal.org.commonmark.renderer.markdown.CoreMarkdownNodeRenderer.OrderedListHolder

Field Summary

Modifier and TypeField and Description
pack-priv final CoreMarkdownNodeRenderer.ListHolder

Constructor Summary

AccessConstructor and Description
protected

Method Summary

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

parentback to summary
pack-priv final CoreMarkdownNodeRenderer.ListHolder parent

Constructor Detail

ListHolderback to summary
protected ListHolder(CoreMarkdownNodeRenderer.ListHolder parent)
jdk.internal.org.commonmark.renderer.markdown back to summary

private Class CoreMarkdownNodeRenderer.OrderedListHolder

extends ListHolder
Class Inheritance

Field Summary

Modifier and TypeField and Description
pack-priv final String
private int
Inherited from jdk.internal.org.commonmark.renderer.markdown.CoreMarkdownNodeRenderer.ListHolder:
parent

Constructor Summary

AccessConstructor and Description
protected

Field Detail

delimiterback to summary
pack-priv final String delimiter
numberback to summary
private int number

Constructor Detail

OrderedListHolderback to summary
protected OrderedListHolder(CoreMarkdownNodeRenderer.ListHolder parent, OrderedList orderedList)