Top Inners Fields Constructors Methods
com.vladsch.flexmark.parser.core

public Class ListBlockParser

extends AbstractBlockParser
Class Inheritance
Imports
com.vladsch.flexmark.ast.BulletList, .ListBlock, .ListItem, .OrderedList, com.vladsch.flexmark.ast.util.Parsing, com.vladsch.flexmark.parser.ListOptions, .Parser, .ParserEmulationProfile, com.vladsch.flexmark.parser.block.*, com.vladsch.flexmark.util.ast.BlankLine, .Block, .Node, com.vladsch.flexmark.util.collection.iteration.ReversiblePeekingIterator, com.vladsch.flexmark.util.data.DataHolder, com.vladsch.flexmark.util.misc.CharPredicate, com.vladsch.flexmark.util.sequence.BasedSequence, .SequenceUtils, com.vladsch.flexmark.util.sequence.mappers.SpecialLeadInCharsHandler, .SpecialLeadInHandler, org.jetbrains.annotations.NotNull, .Nullable, java.util.Arrays, .HashSet, .Set, java.util.function.Consumer, java.util.regex.Matcher

Nested and Inner Type Summary

Modifier and TypeClass and Description
private static class
public static class
pack-priv static class
pack-priv static class

Field Summary

Modifier and TypeField and Description
private final ListBlock
pack-priv BasedSequence
pack-priv boolean
pack-priv boolean
pack-priv boolean
pack-priv ListItemParser
private final ListBlockParser.ListData
private final ListOptions

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public boolean
public boolean
canContain(ParserState
parser state
state
,
BlockParser
block parser
blockParser
,
Block
new block being started @return true if this block parser's block can contain the given block type, false if it cannot
block
)

Overrides com.vladsch.flexmark.parser.block.AbstractBlockParser.canContain.

Implements com.vladsch.flexmark.parser.block.BlockParser.canContain.

public void
private static ListBlock
private void
public ListBlock
pack-priv int
pack-priv BasedSequence
public ListItemParser
pack-priv int
public ListBlockParser.ListData
public ListOptions
private static boolean
public boolean
pack-priv static ListBlockParser.ListData
parseListMarker(ListOptions options, int newItemCodeIndent, ParserState state)

Parse a list marker and return data on the marker or null.

pack-priv void
pack-priv void
pack-priv void
pack-priv void
public void
private void
setTight(boolean tight)

public BlockContinue
tryContinue(ParserState
current parsing state
state
)

Implements com.vladsch.flexmark.parser.block.BlockParser.tryContinue.

See if the block parser can continue parsing the current block

Inherited from com.vladsch.flexmark.parser.block.AbstractBlockParser:
addLinecanInterruptByfinalizeClosedBlockgetBlockContentgetDataHolderisClosedisInterruptibleisParagraphParserisPropagatingLastBlankLineisRawTextparseInlinesremoveBlankLines

Field Detail

myBlockback to summary
private final ListBlock myBlock
myItemHandledLineback to summary
pack-priv BasedSequence myItemHandledLine
myItemHandledNewItemLineback to summary
pack-priv boolean myItemHandledNewItemLine
myItemHandledNewListLineback to summary
pack-priv boolean myItemHandledNewListLine
myItemHandledSkipActiveLineback to summary
pack-priv boolean myItemHandledSkipActiveLine
myLastChildback to summary
pack-priv ListItemParser myLastChild
myListDataback to summary
private final ListBlockParser.ListData myListData
myOptionsback to summary
private final ListOptions myOptions

Constructor Detail

ListBlockParserback to summary
public ListBlockParser(ListOptions options, ListBlockParser.ListData listData, ListItemParser listItemParser)

Method Detail

breakOutOnDoubleBlankLineback to summary
public boolean breakOutOnDoubleBlankLine()

Overrides com.vladsch.flexmark.parser.block.AbstractBlockParser.breakOutOnDoubleBlankLine.

Implements com.vladsch.flexmark.parser.block.BlockParser.breakOutOnDoubleBlankLine.

Returns:boolean

Doc from com.vladsch.flexmark.parser.block.BlockParser.breakOutOnDoubleBlankLine.

true if Double blank line should finalize this block parser and its children and reset to parent

Annotations
@Override
canContainback to summary
public boolean canContain(ParserState state, BlockParser blockParser, Block block)

Overrides com.vladsch.flexmark.parser.block.AbstractBlockParser.canContain.

Implements com.vladsch.flexmark.parser.block.BlockParser.canContain.

Parameters
state:ParserState

Doc from com.vladsch.flexmark.parser.block.BlockParser.canContain.

parser state

blockParser:BlockParser

Doc from com.vladsch.flexmark.parser.block.BlockParser.canContain.

block parser

block:Block

Doc from com.vladsch.flexmark.parser.block.BlockParser.canContain.

new block being started @return true if this block parser's block can contain the given block type, false if it cannot

Annotations
@Override
closeBlockback to summary
public void closeBlock(ParserState state)

Implements com.vladsch.flexmark.parser.block.BlockParser.closeBlock.

Annotations
@Override
createListBlockback to summary
private static ListBlock createListBlock(Matcher matcher)
finalizeListTightback to summary
private void finalizeListTight(ParserState parserState)
getBlockback to summary
public ListBlock getBlock()

Implements com.vladsch.flexmark.parser.block.BlockParser.getBlock.

Returns:ListBlock

Doc from com.vladsch.flexmark.parser.block.BlockParser.getBlock.

the block parser's block node instance

Annotations
@Override
getContentIndentback to summary
pack-priv int getContentIndent()
getItemHandledLineback to summary
pack-priv BasedSequence getItemHandledLine()
getLastChildback to summary
public ListItemParser getLastChild()
getLastContentIndentback to summary
pack-priv int getLastContentIndent()
getListDataback to summary
public ListBlockParser.ListData getListData()
getOptionsback to summary
public ListOptions getOptions()
hasNonItemChildrenback to summary
private static boolean hasNonItemChildren(ListItem item)
isContainerback to summary
public boolean isContainer()

Overrides com.vladsch.flexmark.parser.block.AbstractBlockParser.isContainer.

Implements com.vladsch.flexmark.parser.block.BlockParser.isContainer.

Returns:boolean

Doc from com.vladsch.flexmark.parser.block.BlockParser.isContainer.

true if the block that is parsed is a container (contains other blocks), or false if it's a leaf.

Annotations
@Override
parseListMarkerback to summary
pack-priv static ListBlockParser.ListData parseListMarker(ListOptions options, int newItemCodeIndent, ParserState state)

Parse a list marker and return data on the marker or null.

setItemHandledLineback to summary
pack-priv void setItemHandledLine(BasedSequence itemHandledLine)
setItemHandledLineSkipActiveback to summary
pack-priv void setItemHandledLineSkipActive(BasedSequence itemHandledLine)
setItemHandledNewItemLineback to summary
pack-priv void setItemHandledNewItemLine(BasedSequence itemHandledLine)
setItemHandledNewListLineback to summary
pack-priv void setItemHandledNewListLine(BasedSequence itemHandledLine)
setLastChildback to summary
public void setLastChild(ListItemParser lastChild)
setTightback to summary
private void setTight(boolean tight)
Annotations
@SuppressWarnings:SameParameterValue
tryContinueback to summary
public BlockContinue tryContinue(ParserState state)

Implements com.vladsch.flexmark.parser.block.BlockParser.tryContinue.

Doc from com.vladsch.flexmark.parser.block.BlockParser.tryContinue.

See if the block parser can continue parsing the current block

Parameters
state:ParserState

current parsing state

Returns:BlockContinue

block continue instance

Annotations
@Override
com.vladsch.flexmark.parser.core back to summary

private Class ListBlockParser.BlockFactory

extends AbstractBlockParserFactory
Class Inheritance

Field Summary

Modifier and TypeField and Description
private final ListOptions

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Modifier and TypeMethod and Description
public BlockStart

Field Detail

myOptionsback to summary
private final ListOptions myOptions

Constructor Detail

BlockFactoryback to summary
pack-priv BlockFactory(DataHolder options)

Method Detail

tryStartback to summary
public BlockStart tryStart(ParserState state, MatchedBlockParser matchedBlockParser)

Implements com.vladsch.flexmark.parser.block.BlockParserFactory.tryStart.

Annotations
@Override
com.vladsch.flexmark.parser.core back to summary

public Class ListBlockParser.Factory

extends Object
implements CustomBlockParserFactory
Class Inheritance
All Implemented Interfaces
com.vladsch.flexmark.parser.block.CustomBlockParserFactory, com.vladsch.flexmark.util.dependency.Dependent, java.util.function.Function

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public boolean
public @NotNull BlockParserFactory
apply(@NotNull DataHolder
the function argument
options
)

Implements java.util.function.Function.apply.

Applies this function to the given argument.

public @Nullable Set<Class<?>>
public @Nullable Set<Class<?>>
public @Nullable SpecialLeadInHandler
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Constructor Detail

Factoryback to summary
public Factory()

Method Detail

affectsGlobalScopeback to summary
public boolean affectsGlobalScope()

Implements com.vladsch.flexmark.util.dependency.Dependent.affectsGlobalScope.

Returns:boolean

Doc from com.vladsch.flexmark.util.dependency.Dependent.affectsGlobalScope.

true if this dependent affects the global scope, which means that any that depend on it have to be run after this dependent has run against all elements. Otherwise, the dependent can run on an element after its dependents have processed an element. parsed.

Annotations
@Override
applyback to summary
public @NotNull BlockParserFactory apply(@NotNull DataHolder options)

Implements java.util.function.Function.apply.

Doc from java.util.function.Function.apply.

Applies this function to the given argument.

Parameters
options:@NotNull DataHolder

the function argument

Returns:@NotNull BlockParserFactory

the function result

Annotations
@NotNull
@Override
getAfterDependentsback to summary
public @Nullable Set<Class<?>> getAfterDependents()

Implements com.vladsch.flexmark.util.dependency.Dependent.getAfterDependents.

Returns:@Nullable Set<Class<?>>

Doc from com.vladsch.flexmark.util.dependency.Dependent.getAfterDependents.

null or a list of dependents that must be executed before calling this one if any of the blocks in the list affect global state then these will be run on ALL blocks of the document before this preprocessor is called.

Annotations
@Nullable
@Override
getBeforeDependentsback to summary
public @Nullable Set<Class<?>> getBeforeDependents()

Implements com.vladsch.flexmark.util.dependency.Dependent.getBeforeDependents.

Returns:@Nullable Set<Class<?>>

Doc from com.vladsch.flexmark.util.dependency.Dependent.getBeforeDependents.

null or a list of dependents that must be executed after calling this one if any of the blocks in the list affect global state then these will be run on ALL blocks of the document before this preprocessor is called.

Annotations
@Nullable
@Override
getLeadInHandlerback to summary
public @Nullable SpecialLeadInHandler getLeadInHandler(@NotNull DataHolder options)
Annotations
@Override
@Nullable
com.vladsch.flexmark.parser.core back to summary

pack-priv Class ListBlockParser.ListData

extends Object
Class Inheritance

Field Summary

Modifier and TypeField and Description
pack-priv final int
pack-priv final boolean
pack-priv final boolean
pack-priv final ListBlock
pack-priv final BasedSequence
pack-priv final int
pack-priv final int
pack-priv final int
pack-priv final BasedSequence
pack-priv final int

Constructor Summary

AccessConstructor and Description
pack-priv
ListData(ListBlock listBlock, boolean isEmpty, int markerIndex, int markerColumn, int markerIndent, int contentOffset, BasedSequence listMarker, boolean isNumberedList, BasedSequence markerSuffix, int markerSuffixOffset)

Method Summary

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

contentOffsetback to summary
pack-priv final int contentOffset
isEmptyback to summary
pack-priv final boolean isEmpty
isNumberedListback to summary
pack-priv final boolean isNumberedList
listBlockback to summary
pack-priv final ListBlock listBlock
listMarkerback to summary
pack-priv final BasedSequence listMarker
markerColumnback to summary
pack-priv final int markerColumn
markerIndentback to summary
pack-priv final int markerIndent
markerIndexback to summary
pack-priv final int markerIndex
markerSuffixback to summary
pack-priv final BasedSequence markerSuffix
markerSuffixOffsetback to summary
pack-priv final int markerSuffixOffset

Constructor Detail

ListDataback to summary
pack-priv ListData(ListBlock listBlock, boolean isEmpty, int markerIndex, int markerColumn, int markerIndent, int contentOffset, BasedSequence listMarker, boolean isNumberedList, BasedSequence markerSuffix, int markerSuffixOffset)
com.vladsch.flexmark.parser.core back to summary

pack-priv Class ListBlockParser.ListItemLeadInHandler

extends SpecialLeadInCharsHandler
Class Inheritance

Field Summary

Modifier and TypeField and Description
pack-priv static final CharPredicate
pack-priv static final SpecialLeadInHandler
pack-priv static final CharPredicate
pack-priv static final SpecialLeadInHandler
pack-priv final CharPredicate

Constructor Summary

AccessConstructor and Description
public
ListItemLeadInHandler(CharSequence listItemDelims, boolean dotOnly)

Method Summary

Modifier and TypeMethod and Description
pack-priv static @NotNull SpecialLeadInHandler
create(@NotNull CharSequence listItemDelims, boolean dotOnly)

public boolean
public boolean
Inherited from com.vladsch.flexmark.util.sequence.mappers.SpecialLeadInCharsHandler:
createcreateescapeunEscape

Field Detail

ORDERED_DELIM_DOTback to summary
pack-priv static final CharPredicate ORDERED_DELIM_DOT
ORDERED_DELIM_DOT_HANDLERback to summary
pack-priv static final SpecialLeadInHandler ORDERED_DELIM_DOT_HANDLER
ORDERED_DELIM_DOT_PARENSback to summary
pack-priv static final CharPredicate ORDERED_DELIM_DOT_PARENS
ORDERED_DELIM_DOT_PARENS_HANDLERback to summary
pack-priv static final SpecialLeadInHandler ORDERED_DELIM_DOT_PARENS_HANDLER
orderedDelimsback to summary
pack-priv final CharPredicate orderedDelims

Constructor Detail

ListItemLeadInHandlerback to summary
public ListItemLeadInHandler(CharSequence listItemDelims, boolean dotOnly)

Method Detail

createback to summary
pack-priv static @NotNull SpecialLeadInHandler create(@NotNull CharSequence listItemDelims, boolean dotOnly)
Annotations
@NotNull
escapeback to summary
public boolean escape(@NotNull BasedSequence sequence, @Nullable DataHolder options, @NotNull Consumer<CharSequence> consumer)
Annotations
@Override
unEscapeback to summary
public boolean unEscape(@NotNull BasedSequence sequence, @Nullable DataHolder options, @NotNull Consumer<CharSequence> consumer)
Annotations
@Override