in src/commonMain/kotlin/org/intellij/markdown/parser/markerblocks/impl/ParagraphMarkerBlock.kt [32:56]
override fun doProcessToken(pos: LookaheadText.Position,
currentConstraints: MarkdownConstraints): MarkerBlock.ProcessingResult {
if (pos.offsetInCurrentLine != -1) {
return MarkerBlock.ProcessingResult.CANCEL
}
assert(pos.offsetInCurrentLine == -1)
if (MarkdownParserUtil.calcNumberOfConsequentEols(pos, constraints) >= 2) {
return MarkerBlock.ProcessingResult.DEFAULT
}
val nextLineConstraints = constraints.applyToNextLineAndAddModifiers(pos)
if (!nextLineConstraints.upstreamWith(constraints)) {
return MarkerBlock.ProcessingResult.DEFAULT
}
val posToCheck = pos.nextPosition(1 + nextLineConstraints.getCharsEaten(pos.currentLine))
if (posToCheck == null || interruptsParagraph(posToCheck, nextLineConstraints)) {
return MarkerBlock.ProcessingResult.DEFAULT
}
return MarkerBlock.ProcessingResult.CANCEL
}