Package com.vladsch.flexmark.parser
Class Parser
- java.lang.Object
-
- com.vladsch.flexmark.parser.Parser
-
- All Implemented Interfaces:
com.vladsch.flexmark.util.ast.IParse
public class Parser extends Object implements com.vladsch.flexmark.util.ast.IParse
Parses input text to a tree of nodes.Start with the
builder()
method, configure the parser and build it. Example:Parser parser = Parser.builder().build(); Node document = parser.parse("input text");
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
Parser.Builder
Builder for configuring aParser
.static interface
Parser.ParserExtension
Extension forParser
.static interface
Parser.ReferenceHoldingExtension
Should be implemented by all extensions that create a node repository or other references in the document.
-
Field Summary
Fields Modifier and Type Field Description static com.vladsch.flexmark.util.data.DataKey<Boolean>
ASTERISK_DELIMITER_PROCESSOR
static com.vladsch.flexmark.util.data.DataKey<Boolean>
BLANK_LINES_IN_AST
static com.vladsch.flexmark.util.data.DataKey<Boolean>
BLOCK_QUOTE_ALLOW_LEADING_SPACE
static com.vladsch.flexmark.util.data.DataKey<Boolean>
BLOCK_QUOTE_EXTEND_TO_BLANK_LINE
static com.vladsch.flexmark.util.data.DataKey<Boolean>
BLOCK_QUOTE_IGNORE_BLANK_LINE
static com.vladsch.flexmark.util.data.DataKey<Boolean>
BLOCK_QUOTE_INTERRUPTS_ITEM_PARAGRAPH
static com.vladsch.flexmark.util.data.DataKey<Boolean>
BLOCK_QUOTE_INTERRUPTS_PARAGRAPH
static com.vladsch.flexmark.util.data.DataKey<Boolean>
BLOCK_QUOTE_PARSER
static com.vladsch.flexmark.util.data.DataKey<Boolean>
BLOCK_QUOTE_WITH_LEAD_SPACES_INTERRUPTS_ITEM_PARAGRAPH
static com.vladsch.flexmark.util.data.DataKey<Integer>
CODE_BLOCK_INDENT
static com.vladsch.flexmark.util.data.DataKey<Boolean>
CODE_SOFT_LINE_BREAKS
static com.vladsch.flexmark.util.data.DataKey<Boolean>
ESCAPE_HEADING_NO_ATX_SPACE
static com.vladsch.flexmark.util.data.DataKey<Collection<com.vladsch.flexmark.util.misc.Extension>>
EXTENSIONS
static com.vladsch.flexmark.util.data.DataKey<Boolean>
FENCED_CODE_BLOCK_PARSER
static com.vladsch.flexmark.util.data.DataKey<Boolean>
FENCED_CODE_CONTENT_BLOCK
static com.vladsch.flexmark.util.data.DataKey<Boolean>
HARD_LINE_BREAK_LIMIT
static com.vladsch.flexmark.util.data.DataKey<Boolean>
HEADING_CAN_INTERRUPT_ITEM_PARAGRAPH
static com.vladsch.flexmark.util.data.DataKey<Boolean>
HEADING_NO_ATX_SPACE
static com.vladsch.flexmark.util.data.DataKey<Boolean>
HEADING_NO_EMPTY_HEADING_WITHOUT_SPACE
static com.vladsch.flexmark.util.data.DataKey<Boolean>
HEADING_NO_LEAD_SPACE
static com.vladsch.flexmark.util.data.DataKey<Boolean>
HEADING_PARSER
static com.vladsch.flexmark.util.data.DataKey<Integer>
HEADING_SETEXT_MARKER_LENGTH
static com.vladsch.flexmark.util.data.DataKey<Boolean>
HTML_ALLOW_NAME_SPACE
Name spaces are allowed in HTML elements, default false for backward compatibilitystatic com.vladsch.flexmark.util.data.DataKey<Boolean>
HTML_BLOCK_COMMENT_ONLY_FULL_LINE
static com.vladsch.flexmark.util.data.DataKey<Boolean>
HTML_BLOCK_DEEP_PARSE_BLANK_LINE_INTERRUPTS
Blank line interrupts HTML block when not in raw tag, otherwise only when closedstatic com.vladsch.flexmark.util.data.DataKey<Boolean>
HTML_BLOCK_DEEP_PARSE_BLANK_LINE_INTERRUPTS_PARTIAL_TAG
blank line interrupts partially open tag ie.static com.vladsch.flexmark.util.data.DataKey<Boolean>
HTML_BLOCK_DEEP_PARSE_FIRST_OPEN_TAG_ON_ONE_LINE
open tags must be contained on one linestatic com.vladsch.flexmark.util.data.DataKey<Boolean>
HTML_BLOCK_DEEP_PARSE_INDENTED_CODE_INTERRUPTS
Indented code can interrupt HTML blockstatic com.vladsch.flexmark.util.data.DataKey<Boolean>
HTML_BLOCK_DEEP_PARSE_MARKDOWN_INTERRUPTS_CLOSED
Other markdown elements can interrupt a closed block without an intervening blank linestatic com.vladsch.flexmark.util.data.DataKey<Boolean>
HTML_BLOCK_DEEP_PARSE_NON_BLOCK
static com.vladsch.flexmark.util.data.DataKey<Boolean>
HTML_BLOCK_DEEP_PARSER
static com.vladsch.flexmark.util.data.DataKey<Boolean>
HTML_BLOCK_PARSER
static com.vladsch.flexmark.util.data.DataKey<Boolean>
HTML_BLOCK_START_ONLY_ON_BLOCK_TAGS
static com.vladsch.flexmark.util.data.DataKey<List<String>>
HTML_BLOCK_TAGS
static com.vladsch.flexmark.util.data.DataKey<Boolean>
HTML_COMMENT_BLOCKS_INTERRUPT_PARAGRAPH
static com.vladsch.flexmark.util.data.DataKey<Boolean>
HTML_FOR_TRANSLATOR
static com.vladsch.flexmark.util.data.DataKey<Boolean>
INDENTED_CODE_BLOCK_PARSER
static com.vladsch.flexmark.util.data.DataKey<Boolean>
INDENTED_CODE_NO_TRAILING_BLANK_LINES
static com.vladsch.flexmark.util.data.DataKey<Boolean>
INLINE_DELIMITER_DIRECTIONAL_PUNCTUATIONS
static com.vladsch.flexmark.util.data.DataKey<Boolean>
INTELLIJ_DUMMY_IDENTIFIER
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LINK_TEXT_PRIORITY_OVER_LINK_REF
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LINKS_ALLOW_MATCHED_PARENTHESES
LINKS_ALLOW_MATCHED_PARENTHESES default true, when false makes parsing CommonMark Spec 0.27 compliantstatic com.vladsch.flexmark.util.data.DataKey<Boolean>
LIST_BLOCK_PARSER
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LISTS_AUTO_LOOSE
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LISTS_AUTO_LOOSE_ONE_LEVEL_LISTS
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LISTS_BULLET_ITEM_INTERRUPTS_ITEM_PARAGRAPH
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LISTS_BULLET_ITEM_INTERRUPTS_PARAGRAPH
static com.vladsch.flexmark.util.data.DataKey<Integer>
LISTS_CODE_INDENT
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LISTS_DELIMITER_MISMATCH_TO_NEW_LIST
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LISTS_EMPTY_BULLET_ITEM_INTERRUPTS_ITEM_PARAGRAPH
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LISTS_EMPTY_BULLET_ITEM_INTERRUPTS_PARAGRAPH
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LISTS_EMPTY_BULLET_SUB_ITEM_INTERRUPTS_ITEM_PARAGRAPH
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LISTS_EMPTY_ORDERED_ITEM_INTERRUPTS_ITEM_PARAGRAPH
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LISTS_EMPTY_ORDERED_ITEM_INTERRUPTS_PARAGRAPH
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LISTS_EMPTY_ORDERED_NON_ONE_ITEM_INTERRUPTS_ITEM_PARAGRAPH
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LISTS_EMPTY_ORDERED_NON_ONE_ITEM_INTERRUPTS_PARAGRAPH
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LISTS_EMPTY_ORDERED_NON_ONE_SUB_ITEM_INTERRUPTS_ITEM_PARAGRAPH
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LISTS_EMPTY_ORDERED_SUB_ITEM_INTERRUPTS_ITEM_PARAGRAPH
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LISTS_END_ON_DOUBLE_BLANK
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LISTS_ITEM_CONTENT_AFTER_SUFFIX
static com.vladsch.flexmark.util.data.DataKey<Integer>
LISTS_ITEM_INDENT
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LISTS_ITEM_MARKER_SPACE
static com.vladsch.flexmark.util.data.DataKey<String[]>
LISTS_ITEM_MARKER_SUFFIXES
static com.vladsch.flexmark.util.data.DataKey<String>
LISTS_ITEM_PREFIX_CHARS
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LISTS_ITEM_TYPE_MISMATCH_TO_NEW_LIST
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LISTS_ITEM_TYPE_MISMATCH_TO_SUB_LIST
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LISTS_LOOSE_WHEN_BLANK_LINE_FOLLOWS_ITEM_PARAGRAPH
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LISTS_LOOSE_WHEN_CONTAINS_BLANK_LINE
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LISTS_LOOSE_WHEN_HAS_LOOSE_SUB_ITEM
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LISTS_LOOSE_WHEN_HAS_NON_LIST_CHILDREN
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LISTS_LOOSE_WHEN_HAS_TRAILING_BLANK_LINE
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LISTS_LOOSE_WHEN_LAST_ITEM_PREV_HAS_TRAILING_BLANK_LINE
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LISTS_LOOSE_WHEN_PREV_HAS_TRAILING_BLANK_LINE
static com.vladsch.flexmark.util.data.DataKey<Integer>
LISTS_NEW_ITEM_CODE_INDENT
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LISTS_NUMBERED_ITEM_MARKER_SUFFIXED
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LISTS_ORDERED_ITEM_DOT_ONLY
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LISTS_ORDERED_ITEM_INTERRUPTS_ITEM_PARAGRAPH
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LISTS_ORDERED_ITEM_INTERRUPTS_PARAGRAPH
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LISTS_ORDERED_LIST_MANUAL_START
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LISTS_ORDERED_NON_ONE_ITEM_INTERRUPTS_ITEM_PARAGRAPH
static com.vladsch.flexmark.util.data.DataKey<Boolean>
LISTS_ORDERED_NON_ONE_ITEM_INTERRUPTS_PARAGRAPH
static com.vladsch.flexmark.util.data.DataKey<Boolean>
MATCH_CLOSING_FENCE_CHARACTERS
static com.vladsch.flexmark.util.data.DataKey<Boolean>
MATCH_NESTED_LINK_REFS_FIRST
static com.vladsch.flexmark.util.data.DataKey<Boolean>
PARSE_INNER_HTML_COMMENTS
static com.vladsch.flexmark.util.data.DataKey<Boolean>
PARSE_JEKYLL_MACROS_IN_URLS
static com.vladsch.flexmark.util.data.DataKey<Boolean>
PARSE_MULTI_LINE_IMAGE_URLS
static com.vladsch.flexmark.util.data.DataKey<ParserEmulationProfile>
PARSER_EMULATION_PROFILE
static com.vladsch.flexmark.util.data.DataKey<Boolean>
REFERENCE_PARAGRAPH_PRE_PROCESSOR
static com.vladsch.flexmark.util.data.DataKey<ReferenceRepository>
REFERENCES
static com.vladsch.flexmark.util.data.DataKey<com.vladsch.flexmark.util.ast.KeepType>
REFERENCES_KEEP
static com.vladsch.flexmark.util.data.DataKey<Boolean>
SPACE_IN_LINK_ELEMENTS
static com.vladsch.flexmark.util.data.DataKey<Boolean>
SPACE_IN_LINK_URLS
static com.vladsch.flexmark.util.data.DataKey<List<com.vladsch.flexmark.util.sequence.mappers.SpecialLeadInHandler>>
SPECIAL_LEAD_IN_HANDLERS
static com.vladsch.flexmark.util.data.DataKey<Boolean>
STRONG_WRAPS_EMPHASIS
STRONG_WRAPS_EMPHASIS default false, when true makes parsing CommonMark Spec 0.27 compliantstatic com.vladsch.flexmark.util.data.DataKey<Boolean>
THEMATIC_BREAK_PARSER
static com.vladsch.flexmark.util.data.DataKey<Boolean>
THEMATIC_BREAK_RELAXED_START
static com.vladsch.flexmark.util.data.DataKey<Boolean>
TRACK_DOCUMENT_LINES
static com.vladsch.flexmark.util.data.DataKey<String>
TRANSLATION_AUTOLINK_TAG_PATTERN
static com.vladsch.flexmark.util.data.DataKey<String>
TRANSLATION_HTML_BLOCK_TAG_PATTERN
Used by formatter for translation parsingstatic com.vladsch.flexmark.util.data.DataKey<String>
TRANSLATION_HTML_INLINE_TAG_PATTERN
static com.vladsch.flexmark.util.data.DataKey<Boolean>
UNDERSCORE_DELIMITER_PROCESSOR
static com.vladsch.flexmark.util.data.DataKey<Boolean>
USE_HARDCODED_LINK_ADDRESS_PARSER
static com.vladsch.flexmark.util.data.DataKey<Boolean>
WWW_AUTO_LINK_ELEMENT
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static com.vladsch.flexmark.util.data.MutableDataHolder
addExtensions(com.vladsch.flexmark.util.data.MutableDataHolder options, com.vladsch.flexmark.util.misc.Extension... extensions)
Add extension(s) to the extension liststatic Parser.Builder
builder()
Create a new builder for configuring aParser
.static Parser.Builder
builder(com.vladsch.flexmark.util.data.DataHolder options)
@NotNull com.vladsch.flexmark.util.data.DataHolder
getOptions()
@NotNull com.vladsch.flexmark.util.ast.Document
parse(@NotNull com.vladsch.flexmark.util.sequence.BasedSequence input)
Parse the specified input text into a tree of nodes.@NotNull com.vladsch.flexmark.util.ast.Document
parse(@NotNull String input)
Parse the specified input text into a tree of nodes.@NotNull com.vladsch.flexmark.util.ast.Document
parseReader(@NotNull Reader input)
Parse the specified reader into a tree of nodes.static com.vladsch.flexmark.util.data.MutableDataHolder
removeExtensions(com.vladsch.flexmark.util.data.MutableDataHolder options, Class... extensions)
Remove extension(s) of given class from the extension listboolean
transferReferences(@NotNull com.vladsch.flexmark.util.ast.Document document, @NotNull com.vladsch.flexmark.util.ast.Document included, Boolean onlyIfUndefined)
static <T extends com.vladsch.flexmark.util.ast.Node>
booleantransferReferences(com.vladsch.flexmark.util.ast.NodeRepository<T> destination, com.vladsch.flexmark.util.ast.NodeRepository<T> included, boolean onlyIfUndefined)
-
-
-
Field Detail
-
EXTENSIONS
public static final com.vladsch.flexmark.util.data.DataKey<Collection<com.vladsch.flexmark.util.misc.Extension>> EXTENSIONS
-
REFERENCES_KEEP
public static final com.vladsch.flexmark.util.data.DataKey<com.vladsch.flexmark.util.ast.KeepType> REFERENCES_KEEP
-
REFERENCES
public static final com.vladsch.flexmark.util.data.DataKey<ReferenceRepository> REFERENCES
-
ASTERISK_DELIMITER_PROCESSOR
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> ASTERISK_DELIMITER_PROCESSOR
-
TRACK_DOCUMENT_LINES
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> TRACK_DOCUMENT_LINES
-
BLOCK_QUOTE_PARSER
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> BLOCK_QUOTE_PARSER
-
BLOCK_QUOTE_EXTEND_TO_BLANK_LINE
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> BLOCK_QUOTE_EXTEND_TO_BLANK_LINE
-
BLOCK_QUOTE_IGNORE_BLANK_LINE
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> BLOCK_QUOTE_IGNORE_BLANK_LINE
-
BLOCK_QUOTE_ALLOW_LEADING_SPACE
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> BLOCK_QUOTE_ALLOW_LEADING_SPACE
-
BLOCK_QUOTE_INTERRUPTS_PARAGRAPH
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> BLOCK_QUOTE_INTERRUPTS_PARAGRAPH
-
BLOCK_QUOTE_INTERRUPTS_ITEM_PARAGRAPH
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> BLOCK_QUOTE_INTERRUPTS_ITEM_PARAGRAPH
-
BLOCK_QUOTE_WITH_LEAD_SPACES_INTERRUPTS_ITEM_PARAGRAPH
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> BLOCK_QUOTE_WITH_LEAD_SPACES_INTERRUPTS_ITEM_PARAGRAPH
-
FENCED_CODE_BLOCK_PARSER
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> FENCED_CODE_BLOCK_PARSER
-
MATCH_CLOSING_FENCE_CHARACTERS
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> MATCH_CLOSING_FENCE_CHARACTERS
-
FENCED_CODE_CONTENT_BLOCK
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> FENCED_CODE_CONTENT_BLOCK
-
CODE_SOFT_LINE_BREAKS
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> CODE_SOFT_LINE_BREAKS
-
HARD_LINE_BREAK_LIMIT
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> HARD_LINE_BREAK_LIMIT
-
HEADING_PARSER
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> HEADING_PARSER
-
HEADING_SETEXT_MARKER_LENGTH
public static final com.vladsch.flexmark.util.data.DataKey<Integer> HEADING_SETEXT_MARKER_LENGTH
-
HEADING_NO_ATX_SPACE
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> HEADING_NO_ATX_SPACE
-
ESCAPE_HEADING_NO_ATX_SPACE
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> ESCAPE_HEADING_NO_ATX_SPACE
-
HEADING_NO_EMPTY_HEADING_WITHOUT_SPACE
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> HEADING_NO_EMPTY_HEADING_WITHOUT_SPACE
-
HEADING_NO_LEAD_SPACE
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> HEADING_NO_LEAD_SPACE
-
HEADING_CAN_INTERRUPT_ITEM_PARAGRAPH
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> HEADING_CAN_INTERRUPT_ITEM_PARAGRAPH
-
HTML_BLOCK_PARSER
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> HTML_BLOCK_PARSER
-
HTML_COMMENT_BLOCKS_INTERRUPT_PARAGRAPH
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> HTML_COMMENT_BLOCKS_INTERRUPT_PARAGRAPH
-
HTML_FOR_TRANSLATOR
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> HTML_FOR_TRANSLATOR
-
INLINE_DELIMITER_DIRECTIONAL_PUNCTUATIONS
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> INLINE_DELIMITER_DIRECTIONAL_PUNCTUATIONS
-
INDENTED_CODE_BLOCK_PARSER
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> INDENTED_CODE_BLOCK_PARSER
-
INDENTED_CODE_NO_TRAILING_BLANK_LINES
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> INDENTED_CODE_NO_TRAILING_BLANK_LINES
-
INTELLIJ_DUMMY_IDENTIFIER
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> INTELLIJ_DUMMY_IDENTIFIER
-
MATCH_NESTED_LINK_REFS_FIRST
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> MATCH_NESTED_LINK_REFS_FIRST
-
PARSE_INNER_HTML_COMMENTS
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> PARSE_INNER_HTML_COMMENTS
-
PARSE_MULTI_LINE_IMAGE_URLS
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> PARSE_MULTI_LINE_IMAGE_URLS
-
PARSE_JEKYLL_MACROS_IN_URLS
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> PARSE_JEKYLL_MACROS_IN_URLS
-
SPACE_IN_LINK_URLS
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> SPACE_IN_LINK_URLS
-
SPACE_IN_LINK_ELEMENTS
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> SPACE_IN_LINK_ELEMENTS
-
WWW_AUTO_LINK_ELEMENT
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> WWW_AUTO_LINK_ELEMENT
-
LINK_TEXT_PRIORITY_OVER_LINK_REF
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LINK_TEXT_PRIORITY_OVER_LINK_REF
-
REFERENCE_PARAGRAPH_PRE_PROCESSOR
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> REFERENCE_PARAGRAPH_PRE_PROCESSOR
-
THEMATIC_BREAK_PARSER
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> THEMATIC_BREAK_PARSER
-
THEMATIC_BREAK_RELAXED_START
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> THEMATIC_BREAK_RELAXED_START
-
UNDERSCORE_DELIMITER_PROCESSOR
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> UNDERSCORE_DELIMITER_PROCESSOR
-
BLANK_LINES_IN_AST
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> BLANK_LINES_IN_AST
-
USE_HARDCODED_LINK_ADDRESS_PARSER
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> USE_HARDCODED_LINK_ADDRESS_PARSER
-
STRONG_WRAPS_EMPHASIS
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> STRONG_WRAPS_EMPHASIS
STRONG_WRAPS_EMPHASIS default false, when true makes parsing CommonMark Spec 0.27 compliant
-
LINKS_ALLOW_MATCHED_PARENTHESES
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LINKS_ALLOW_MATCHED_PARENTHESES
LINKS_ALLOW_MATCHED_PARENTHESES default true, when false makes parsing CommonMark Spec 0.27 compliant
-
LIST_BLOCK_PARSER
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LIST_BLOCK_PARSER
-
PARSER_EMULATION_PROFILE
public static final com.vladsch.flexmark.util.data.DataKey<ParserEmulationProfile> PARSER_EMULATION_PROFILE
-
HTML_BLOCK_DEEP_PARSER
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> HTML_BLOCK_DEEP_PARSER
-
HTML_BLOCK_DEEP_PARSE_NON_BLOCK
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> HTML_BLOCK_DEEP_PARSE_NON_BLOCK
-
HTML_BLOCK_COMMENT_ONLY_FULL_LINE
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> HTML_BLOCK_COMMENT_ONLY_FULL_LINE
-
HTML_BLOCK_START_ONLY_ON_BLOCK_TAGS
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> HTML_BLOCK_START_ONLY_ON_BLOCK_TAGS
-
HTML_BLOCK_TAGS
public static final com.vladsch.flexmark.util.data.DataKey<List<String>> HTML_BLOCK_TAGS
-
HTML_BLOCK_DEEP_PARSE_BLANK_LINE_INTERRUPTS
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> HTML_BLOCK_DEEP_PARSE_BLANK_LINE_INTERRUPTS
Blank line interrupts HTML block when not in raw tag, otherwise only when closed
-
HTML_BLOCK_DEEP_PARSE_FIRST_OPEN_TAG_ON_ONE_LINE
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> HTML_BLOCK_DEEP_PARSE_FIRST_OPEN_TAG_ON_ONE_LINE
open tags must be contained on one line
-
HTML_BLOCK_DEEP_PARSE_MARKDOWN_INTERRUPTS_CLOSED
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> HTML_BLOCK_DEEP_PARSE_MARKDOWN_INTERRUPTS_CLOSED
Other markdown elements can interrupt a closed block without an intervening blank line
-
HTML_BLOCK_DEEP_PARSE_BLANK_LINE_INTERRUPTS_PARTIAL_TAG
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> HTML_BLOCK_DEEP_PARSE_BLANK_LINE_INTERRUPTS_PARTIAL_TAG
blank line interrupts partially open tag ie. <TAG without a corresponding >
-
HTML_BLOCK_DEEP_PARSE_INDENTED_CODE_INTERRUPTS
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> HTML_BLOCK_DEEP_PARSE_INDENTED_CODE_INTERRUPTS
Indented code can interrupt HTML block
-
HTML_ALLOW_NAME_SPACE
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> HTML_ALLOW_NAME_SPACE
Name spaces are allowed in HTML elements, default false for backward compatibility
-
TRANSLATION_HTML_BLOCK_TAG_PATTERN
public static final com.vladsch.flexmark.util.data.DataKey<String> TRANSLATION_HTML_BLOCK_TAG_PATTERN
Used by formatter for translation parsing
-
TRANSLATION_HTML_INLINE_TAG_PATTERN
public static final com.vladsch.flexmark.util.data.DataKey<String> TRANSLATION_HTML_INLINE_TAG_PATTERN
-
TRANSLATION_AUTOLINK_TAG_PATTERN
public static final com.vladsch.flexmark.util.data.DataKey<String> TRANSLATION_AUTOLINK_TAG_PATTERN
-
LISTS_CODE_INDENT
public static final com.vladsch.flexmark.util.data.DataKey<Integer> LISTS_CODE_INDENT
-
LISTS_ITEM_INDENT
public static final com.vladsch.flexmark.util.data.DataKey<Integer> LISTS_ITEM_INDENT
-
LISTS_NEW_ITEM_CODE_INDENT
public static final com.vladsch.flexmark.util.data.DataKey<Integer> LISTS_NEW_ITEM_CODE_INDENT
-
LISTS_ITEM_MARKER_SPACE
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LISTS_ITEM_MARKER_SPACE
-
LISTS_ITEM_MARKER_SUFFIXES
public static final com.vladsch.flexmark.util.data.DataKey<String[]> LISTS_ITEM_MARKER_SUFFIXES
-
LISTS_NUMBERED_ITEM_MARKER_SUFFIXED
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LISTS_NUMBERED_ITEM_MARKER_SUFFIXED
-
LISTS_AUTO_LOOSE
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LISTS_AUTO_LOOSE
-
LISTS_AUTO_LOOSE_ONE_LEVEL_LISTS
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LISTS_AUTO_LOOSE_ONE_LEVEL_LISTS
-
LISTS_LOOSE_WHEN_PREV_HAS_TRAILING_BLANK_LINE
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LISTS_LOOSE_WHEN_PREV_HAS_TRAILING_BLANK_LINE
-
LISTS_LOOSE_WHEN_LAST_ITEM_PREV_HAS_TRAILING_BLANK_LINE
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LISTS_LOOSE_WHEN_LAST_ITEM_PREV_HAS_TRAILING_BLANK_LINE
-
LISTS_LOOSE_WHEN_HAS_NON_LIST_CHILDREN
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LISTS_LOOSE_WHEN_HAS_NON_LIST_CHILDREN
-
LISTS_LOOSE_WHEN_BLANK_LINE_FOLLOWS_ITEM_PARAGRAPH
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LISTS_LOOSE_WHEN_BLANK_LINE_FOLLOWS_ITEM_PARAGRAPH
-
LISTS_LOOSE_WHEN_HAS_LOOSE_SUB_ITEM
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LISTS_LOOSE_WHEN_HAS_LOOSE_SUB_ITEM
-
LISTS_LOOSE_WHEN_HAS_TRAILING_BLANK_LINE
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LISTS_LOOSE_WHEN_HAS_TRAILING_BLANK_LINE
-
LISTS_LOOSE_WHEN_CONTAINS_BLANK_LINE
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LISTS_LOOSE_WHEN_CONTAINS_BLANK_LINE
-
LISTS_DELIMITER_MISMATCH_TO_NEW_LIST
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LISTS_DELIMITER_MISMATCH_TO_NEW_LIST
-
LISTS_END_ON_DOUBLE_BLANK
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LISTS_END_ON_DOUBLE_BLANK
-
LISTS_ITEM_TYPE_MISMATCH_TO_NEW_LIST
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LISTS_ITEM_TYPE_MISMATCH_TO_NEW_LIST
-
LISTS_ITEM_TYPE_MISMATCH_TO_SUB_LIST
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LISTS_ITEM_TYPE_MISMATCH_TO_SUB_LIST
-
LISTS_ORDERED_ITEM_DOT_ONLY
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LISTS_ORDERED_ITEM_DOT_ONLY
-
LISTS_ORDERED_LIST_MANUAL_START
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LISTS_ORDERED_LIST_MANUAL_START
-
LISTS_ITEM_CONTENT_AFTER_SUFFIX
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LISTS_ITEM_CONTENT_AFTER_SUFFIX
-
LISTS_BULLET_ITEM_INTERRUPTS_PARAGRAPH
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LISTS_BULLET_ITEM_INTERRUPTS_PARAGRAPH
-
LISTS_ORDERED_ITEM_INTERRUPTS_PARAGRAPH
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LISTS_ORDERED_ITEM_INTERRUPTS_PARAGRAPH
-
LISTS_ORDERED_NON_ONE_ITEM_INTERRUPTS_PARAGRAPH
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LISTS_ORDERED_NON_ONE_ITEM_INTERRUPTS_PARAGRAPH
-
LISTS_EMPTY_BULLET_ITEM_INTERRUPTS_PARAGRAPH
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LISTS_EMPTY_BULLET_ITEM_INTERRUPTS_PARAGRAPH
-
LISTS_EMPTY_ORDERED_ITEM_INTERRUPTS_PARAGRAPH
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LISTS_EMPTY_ORDERED_ITEM_INTERRUPTS_PARAGRAPH
-
LISTS_EMPTY_ORDERED_NON_ONE_ITEM_INTERRUPTS_PARAGRAPH
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LISTS_EMPTY_ORDERED_NON_ONE_ITEM_INTERRUPTS_PARAGRAPH
-
LISTS_BULLET_ITEM_INTERRUPTS_ITEM_PARAGRAPH
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LISTS_BULLET_ITEM_INTERRUPTS_ITEM_PARAGRAPH
-
LISTS_ORDERED_ITEM_INTERRUPTS_ITEM_PARAGRAPH
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LISTS_ORDERED_ITEM_INTERRUPTS_ITEM_PARAGRAPH
-
LISTS_ORDERED_NON_ONE_ITEM_INTERRUPTS_ITEM_PARAGRAPH
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LISTS_ORDERED_NON_ONE_ITEM_INTERRUPTS_ITEM_PARAGRAPH
-
LISTS_EMPTY_BULLET_ITEM_INTERRUPTS_ITEM_PARAGRAPH
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LISTS_EMPTY_BULLET_ITEM_INTERRUPTS_ITEM_PARAGRAPH
-
LISTS_EMPTY_ORDERED_ITEM_INTERRUPTS_ITEM_PARAGRAPH
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LISTS_EMPTY_ORDERED_ITEM_INTERRUPTS_ITEM_PARAGRAPH
-
LISTS_EMPTY_ORDERED_NON_ONE_ITEM_INTERRUPTS_ITEM_PARAGRAPH
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LISTS_EMPTY_ORDERED_NON_ONE_ITEM_INTERRUPTS_ITEM_PARAGRAPH
-
LISTS_EMPTY_BULLET_SUB_ITEM_INTERRUPTS_ITEM_PARAGRAPH
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LISTS_EMPTY_BULLET_SUB_ITEM_INTERRUPTS_ITEM_PARAGRAPH
-
LISTS_EMPTY_ORDERED_SUB_ITEM_INTERRUPTS_ITEM_PARAGRAPH
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LISTS_EMPTY_ORDERED_SUB_ITEM_INTERRUPTS_ITEM_PARAGRAPH
-
LISTS_EMPTY_ORDERED_NON_ONE_SUB_ITEM_INTERRUPTS_ITEM_PARAGRAPH
public static final com.vladsch.flexmark.util.data.DataKey<Boolean> LISTS_EMPTY_ORDERED_NON_ONE_SUB_ITEM_INTERRUPTS_ITEM_PARAGRAPH
-
LISTS_ITEM_PREFIX_CHARS
public static final com.vladsch.flexmark.util.data.DataKey<String> LISTS_ITEM_PREFIX_CHARS
-
SPECIAL_LEAD_IN_HANDLERS
public static final com.vladsch.flexmark.util.data.DataKey<List<com.vladsch.flexmark.util.sequence.mappers.SpecialLeadInHandler>> SPECIAL_LEAD_IN_HANDLERS
-
CODE_BLOCK_INDENT
public static final com.vladsch.flexmark.util.data.DataKey<Integer> CODE_BLOCK_INDENT
-
-
Method Detail
-
builder
public static Parser.Builder builder()
Create a new builder for configuring aParser
.- Returns:
- a builder
-
builder
public static Parser.Builder builder(com.vladsch.flexmark.util.data.DataHolder options)
-
parse
@NotNull public @NotNull com.vladsch.flexmark.util.ast.Document parse(@NotNull @NotNull com.vladsch.flexmark.util.sequence.BasedSequence input)
Parse the specified input text into a tree of nodes.Note that this method is thread-safe (a new parser state is used for each invocation).
- Specified by:
parse
in interfacecom.vladsch.flexmark.util.ast.IParse
- Parameters:
input
- the text to parse- Returns:
- the root node
-
parse
@NotNull public @NotNull com.vladsch.flexmark.util.ast.Document parse(@NotNull @NotNull String input)
Parse the specified input text into a tree of nodes.Note that this method is thread-safe (a new parser state is used for each invocation).
- Specified by:
parse
in interfacecom.vladsch.flexmark.util.ast.IParse
- Parameters:
input
- the text to parse- Returns:
- the root node
-
parseReader
@NotNull public @NotNull com.vladsch.flexmark.util.ast.Document parseReader(@NotNull @NotNull Reader input) throws IOException
Parse the specified reader into a tree of nodes. The caller is responsible for closing the reader.Note that this method is thread-safe (a new parser state is used for each invocation).
- Specified by:
parseReader
in interfacecom.vladsch.flexmark.util.ast.IParse
- Parameters:
input
- the reader to parse- Returns:
- the root node
- Throws:
IOException
- when reading throws an exception
-
getOptions
@NotNull public @NotNull com.vladsch.flexmark.util.data.DataHolder getOptions()
- Specified by:
getOptions
in interfacecom.vladsch.flexmark.util.ast.IParse
-
transferReferences
public boolean transferReferences(@NotNull @NotNull com.vladsch.flexmark.util.ast.Document document, @NotNull @NotNull com.vladsch.flexmark.util.ast.Document included, Boolean onlyIfUndefined)
- Specified by:
transferReferences
in interfacecom.vladsch.flexmark.util.ast.IParse
-
transferReferences
public static <T extends com.vladsch.flexmark.util.ast.Node> boolean transferReferences(com.vladsch.flexmark.util.ast.NodeRepository<T> destination, com.vladsch.flexmark.util.ast.NodeRepository<T> included, boolean onlyIfUndefined)
-
addExtensions
public static com.vladsch.flexmark.util.data.MutableDataHolder addExtensions(com.vladsch.flexmark.util.data.MutableDataHolder options, com.vladsch.flexmark.util.misc.Extension... extensions)
Add extension(s) to the extension list- Parameters:
options
- mutable options holding existing extensionsextensions
- extension to add- Returns:
- mutable options
-
removeExtensions
public static com.vladsch.flexmark.util.data.MutableDataHolder removeExtensions(com.vladsch.flexmark.util.data.MutableDataHolder options, Class... extensions)
Remove extension(s) of given class from the extension list- Parameters:
options
- mutable options holding existing extensionsextensions
- extension classes to remove- Returns:
- mutable options
-
-