public class DocumentParser extends Object implements ParserState
| Modifier and Type | Class and Description |
|---|---|
static class |
DocumentParser.BlockPreProcessorDependencies |
static class |
DocumentParser.BlockPreProcessorDependencyStage |
static class |
DocumentParser.CustomBlockParserDependencies |
static class |
DocumentParser.CustomBlockParserDependencyStage |
static class |
DocumentParser.ParagraphPreProcessorDependencies |
static class |
DocumentParser.ParagraphPreProcessorDependencyStage |
| Modifier and Type | Field and Description |
|---|---|
static InlineParserFactory |
INLINE_PARSER_FACTORY |
| Constructor and Description |
|---|
DocumentParser(com.vladsch.flexmark.util.options.DataHolder options,
List<CustomBlockParserFactory> customBlockParserFactories,
DocumentParser.ParagraphPreProcessorDependencies paragraphPreProcessorDependencies,
DocumentParser.BlockPreProcessorDependencies blockPreProcessorDependencies,
InlineParser inlineParser) |
| Modifier and Type | Method and Description |
|---|---|
void |
blockAdded(com.vladsch.flexmark.ast.Block node) |
void |
blockAddedWithChildren(com.vladsch.flexmark.ast.Block node) |
void |
blockAddedWithDescendants(com.vladsch.flexmark.ast.Block node) |
void |
blockParserAdded(BlockParser blockParser) |
void |
blockParserRemoved(BlockParser blockParser) |
void |
blockRemoved(com.vladsch.flexmark.ast.Block node) |
void |
blockRemovedWithChildren(com.vladsch.flexmark.ast.Block node) |
void |
blockRemovedWithDescendants(com.vladsch.flexmark.ast.Block node) |
static List<CustomBlockParserFactory> |
calculateBlockParserFactories(com.vladsch.flexmark.util.options.DataHolder options,
List<CustomBlockParserFactory> customBlockParserFactories) |
static DocumentParser.BlockPreProcessorDependencies |
calculateBlockPreProcessors(com.vladsch.flexmark.util.options.DataHolder options,
List<BlockPreProcessorFactory> blockPreProcessors,
InlineParserFactory inlineParserFactory) |
static DocumentParser.ParagraphPreProcessorDependencies |
calculateParagraphPreProcessors(com.vladsch.flexmark.util.options.DataHolder options,
List<ParagraphPreProcessorFactory> blockPreProcessors,
InlineParserFactory inlineParserFactory) |
boolean |
endsWithBlankLine(com.vladsch.flexmark.ast.Node block)
Test the block to see if it ends in a blank line.
|
BlockParser |
getActiveBlockParser() |
BlockParser |
getActiveBlockParser(com.vladsch.flexmark.ast.Block node) |
List<BlockParser> |
getActiveBlockParsers() |
int |
getColumn()
The column is the position within the line after tab characters have been processed as 4-space tab stops.
|
int |
getIndent() |
int |
getIndex() |
InlineParser |
getInlineParser() |
com.vladsch.flexmark.util.sequence.BasedSequence |
getLine() |
int |
getLineEndIndex() |
int |
getLineEolLength() |
int |
getLineNumber() |
List<com.vladsch.flexmark.util.sequence.BasedSequence> |
getLineSegments()
Returns a list of document lines encountered this far in the parsing process
|
int |
getLineStart() |
com.vladsch.flexmark.util.sequence.BasedSequence |
getLineWithEOL() |
int |
getNextNonSpaceIndex() |
ParserPhase |
getParserPhase()
Get the current parser phase
|
Parsing |
getParsing() |
com.vladsch.flexmark.util.options.MutableDataHolder |
getProperties() |
boolean |
isBlank() |
boolean |
isLastLineBlank(com.vladsch.flexmark.ast.Node node)
Test a block to see if the last line of the block is blank.
|
com.vladsch.flexmark.ast.Document |
parse(CharSequence source)
The main parsing function.
|
com.vladsch.flexmark.ast.Document |
parse(Reader input) |
public static final InlineParserFactory INLINE_PARSER_FACTORY
public DocumentParser(com.vladsch.flexmark.util.options.DataHolder options,
List<CustomBlockParserFactory> customBlockParserFactories,
DocumentParser.ParagraphPreProcessorDependencies paragraphPreProcessorDependencies,
DocumentParser.BlockPreProcessorDependencies blockPreProcessorDependencies,
InlineParser inlineParser)
public List<com.vladsch.flexmark.util.sequence.BasedSequence> getLineSegments()
ParserStategetLineSegments in interface ParserStatepublic void blockParserAdded(BlockParser blockParser)
blockParserAdded in interface BlockParserTrackerpublic void blockParserRemoved(BlockParser blockParser)
blockParserRemoved in interface BlockParserTrackerpublic void blockAdded(com.vladsch.flexmark.ast.Block node)
blockAdded in interface com.vladsch.flexmark.util.BlockTrackerpublic void blockAddedWithChildren(com.vladsch.flexmark.ast.Block node)
blockAddedWithChildren in interface com.vladsch.flexmark.util.BlockTrackerpublic void blockAddedWithDescendants(com.vladsch.flexmark.ast.Block node)
blockAddedWithDescendants in interface com.vladsch.flexmark.util.BlockTrackerpublic void blockRemoved(com.vladsch.flexmark.ast.Block node)
blockRemoved in interface com.vladsch.flexmark.util.BlockTrackerpublic void blockRemovedWithChildren(com.vladsch.flexmark.ast.Block node)
blockRemovedWithChildren in interface com.vladsch.flexmark.util.BlockTrackerpublic void blockRemovedWithDescendants(com.vladsch.flexmark.ast.Block node)
blockRemovedWithDescendants in interface com.vladsch.flexmark.util.BlockTrackerpublic ParserPhase getParserPhase()
ParserStategetParserPhase in interface ParserStateParserPhasepublic Parsing getParsing()
getParsing in interface ParserStateParsingpublic com.vladsch.flexmark.util.options.MutableDataHolder getProperties()
getProperties in interface ParserStatepublic static List<CustomBlockParserFactory> calculateBlockParserFactories(com.vladsch.flexmark.util.options.DataHolder options, List<CustomBlockParserFactory> customBlockParserFactories)
public static DocumentParser.ParagraphPreProcessorDependencies calculateParagraphPreProcessors(com.vladsch.flexmark.util.options.DataHolder options, List<ParagraphPreProcessorFactory> blockPreProcessors, InlineParserFactory inlineParserFactory)
public static DocumentParser.BlockPreProcessorDependencies calculateBlockPreProcessors(com.vladsch.flexmark.util.options.DataHolder options, List<BlockPreProcessorFactory> blockPreProcessors, InlineParserFactory inlineParserFactory)
public InlineParser getInlineParser()
getInlineParser in interface ParserStatepublic com.vladsch.flexmark.ast.Document parse(CharSequence source)
source - source sequence to parsepublic com.vladsch.flexmark.ast.Document parse(Reader input) throws IOException
IOExceptionpublic int getLineNumber()
getLineNumber in interface ParserStatepublic int getLineStart()
getLineStart in interface ParserStatepublic int getLineEndIndex()
getLineEndIndex in interface ParserStatepublic com.vladsch.flexmark.util.sequence.BasedSequence getLine()
getLine in interface ParserStatepublic com.vladsch.flexmark.util.sequence.BasedSequence getLineWithEOL()
getLineWithEOL in interface ParserStatepublic int getLineEolLength()
getLineEolLength in interface ParserStatepublic int getIndex()
getIndex in interface ParserStatepublic int getNextNonSpaceIndex()
getNextNonSpaceIndex in interface ParserStateParserState.getIndex() (may be the same) (0-based)public int getColumn()
ParserStateParserState.getIndex(). If the line starts with a tab,
followed by text, then the column for the first character of the text is 4 (the index is 1).getColumn in interface ParserStatepublic int getIndent()
getIndent in interface ParserStateParserState.getColumn()public boolean isBlank()
isBlank in interface ParserStatepublic BlockParser getActiveBlockParser()
getActiveBlockParser in interface ParserStatepublic BlockParser getActiveBlockParser(com.vladsch.flexmark.ast.Block node)
getActiveBlockParser in interface ParserStatenode - block node for which to get the active block parserpublic List<BlockParser> getActiveBlockParsers()
getActiveBlockParsers in interface ParserStatepublic boolean endsWithBlankLine(com.vladsch.flexmark.ast.Node block)
ParserStateendsWithBlankLine in interface ParserStateblock - block to be testedpublic boolean isLastLineBlank(com.vladsch.flexmark.ast.Node node)
ParserStateisLastLineBlank in interface ParserStatenode - block instance to testCopyright © 2018. All rights reserved.