Trait

laika.parse.markdown

BlockParsers

Related Doc: package markdown

Permalink

trait BlockParsers extends parse.BlockParsers

Provides all block parsers for Markdown text except for those dealing with verbatim HTML markup which this library treats as an optional feature that has to be explicitly mixed in.

Block parsers are only concerned with splitting the document into (potentially nested) blocks. They are used in the first phase of parsing, while delegating to inline parsers for the 2nd phase.

Self Type
BlockParsers with InlineParsers
Linear Supertypes
parse.BlockParsers, MarkupParsers, BaseParsers, RegexParsers, Parsers, AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. BlockParsers
  2. BlockParsers
  3. MarkupParsers
  4. BaseParsers
  5. RegexParsers
  6. Parsers
  7. AnyRef
  8. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. type Elem = Char

    Permalink
    Definition Classes
    RegexParsers → Parsers
  2. case class Error extends NoSuccess with Product with Serializable

    Permalink
    Definition Classes
    Parsers
  3. case class Failure extends NoSuccess with Product with Serializable

    Permalink
    Definition Classes
    Parsers
  4. case class IndentedBlock(nestLevel: Int, minIndent: Int, lines: List[String]) extends Product with Serializable

    Permalink
    Definition Classes
    BlockParsers
  5. type Input = Reader[(BlockParsers.this)#Elem]

    Permalink
    Definition Classes
    Parsers
  6. class MarkupParserException extends RuntimeException

    Permalink

    Exception thrown when parsing a text markup document or fragment fails.

    Exception thrown when parsing a text markup document or fragment fails. This can only happen due to a bug in this library, as the behaviour of the parser is to treat all unknown or malformed markup as regular text and always succeed. The result property holds the NoSuccess instance that caused the failure.

    Definition Classes
    MarkupParsers
  7. class NestedCharSequenceReader extends CharSequenceReader

    Permalink

    Reader implementation that keeps the current nest level in case of recursive parsing of block-level elements.

    Reader implementation that keeps the current nest level in case of recursive parsing of block-level elements.

    Definition Classes
    BlockParsers
  8. sealed abstract class NoSuccess extends ParseResult[Nothing]

    Permalink
    Definition Classes
    Parsers
  9. trait OnceParser[+T] extends Parser[T]

    Permalink
    Definition Classes
    Parsers
  10. sealed abstract class ParseResult[+T] extends AnyRef

    Permalink
    Definition Classes
    Parsers
  11. abstract class Parser[+T] extends (Input) ⇒ ParseResult[T]

    Permalink
    Definition Classes
    Parsers
  12. implicit class ParserOps[A] extends AnyRef

    Permalink

    Provides additional combinator methods to parsers via implicit conversion.

    Provides additional combinator methods to parsers via implicit conversion.

    Definition Classes
    BaseParsers
  13. case class Success[+T] extends ParseResult[T] with Product with Serializable

    Permalink
    Definition Classes
    Parsers
  14. class TextParser extends Parser[String]

    Permalink

    API for specifying further constraints on the parsers provided by this base trait.

    API for specifying further constraints on the parsers provided by this base trait.

    For reading 3 or more '*' or '+'characters for example the constraint could be specified as follows:

    anyOf('*','+') min 3
    Definition Classes
    MarkupParsers
  15. implicit class TryOps[A] extends AnyRef

    Permalink

    Provides additional methods to Try via implicit conversion.

    Provides additional methods to Try via implicit conversion.

    Definition Classes
    BaseParsers
  16. case class ~[+a, +b] extends Product with Serializable

    Permalink
    Definition Classes
    Parsers

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. object NoSuccess

    Permalink
    Definition Classes
    Parsers
  5. def OnceParser[T](f: ((BlockParsers.this)#Input) ⇒ (BlockParsers.this)#ParseResult[T]): (BlockParsers.this)#Parser[T] with (BlockParsers.this)#OnceParser[T]

    Permalink
    Definition Classes
    Parsers
  6. def Parser[T](f: ((BlockParsers.this)#Input) ⇒ (BlockParsers.this)#ParseResult[T]): (BlockParsers.this)#Parser[T]

    Permalink
    Definition Classes
    Parsers
  7. def accept[U](expected: String, f: PartialFunction[(BlockParsers.this)#Elem, U]): (BlockParsers.this)#Parser[U]

    Permalink
    Definition Classes
    Parsers
  8. def accept[ES](es: ES)(implicit arg0: (ES) ⇒ List[(BlockParsers.this)#Elem]): (BlockParsers.this)#Parser[List[(BlockParsers.this)#Elem]]

    Permalink
    Definition Classes
    Parsers
  9. implicit def accept(e: (BlockParsers.this)#Elem): (BlockParsers.this)#Parser[(BlockParsers.this)#Elem]

    Permalink
    Definition Classes
    Parsers
  10. def acceptIf(p: ((BlockParsers.this)#Elem) ⇒ Boolean)(err: ((BlockParsers.this)#Elem) ⇒ String): (BlockParsers.this)#Parser[(BlockParsers.this)#Elem]

    Permalink
    Definition Classes
    Parsers
  11. def acceptMatch[U](expected: String, f: PartialFunction[(BlockParsers.this)#Elem, U]): (BlockParsers.this)#Parser[U]

    Permalink
    Definition Classes
    Parsers
  12. def acceptSeq[ES](es: ES)(implicit arg0: (ES) ⇒ Iterable[(BlockParsers.this)#Elem]): (BlockParsers.this)#Parser[List[(BlockParsers.this)#Elem]]

    Permalink
    Definition Classes
    Parsers
  13. val any: (BlockParsers.this)#TextParser

    Permalink

    Consumes any kind of input, always succeeds.

    Consumes any kind of input, always succeeds. This parser would consume the entire input unless a max constraint is specified.

    Definition Classes
    MarkupParsers
  14. def anyBut(chars: Char*): (BlockParsers.this)#TextParser

    Permalink

    Consumes any number of consecutive characters that are not one of the specified characters.

    Consumes any number of consecutive characters that are not one of the specified characters. Always succeeds unless a minimum number of required matches is specified.

    Definition Classes
    MarkupParsers
  15. def anyIn(ranges: Traversable[Char]*): (BlockParsers.this)#TextParser

    Permalink

    Consumes any number of consecutive characters that are in one of the specified character ranges.

    Consumes any number of consecutive characters that are in one of the specified character ranges. Always succeeds unless a minimum number of required matches is specified.

    Definition Classes
    MarkupParsers
  16. def anyOf(chars: Char*): (BlockParsers.this)#TextParser

    Permalink

    Consumes any number of consecutive occurrences of the specified characters.

    Consumes any number of consecutive occurrences of the specified characters. Always succeeds unless a minimum number of required matches is specified.

    Definition Classes
    MarkupParsers
  17. def anyUntil(until: ⇒ (BlockParsers.this)#Parser[Any]): (BlockParsers.this)#TextParser

    Permalink

    Consumes any number of characters for which the specified parser fails on the corresponding offset.

    Consumes any number of characters for which the specified parser fails on the corresponding offset. This parser fails if the end of input is reached without the specified parser ever succeeding or if the parser causes an Error result instead of a plain Failure or Success. Further constraints like minimum or maximum number of required matching characters can be specified through the API of the returned TextParser instance.

    Definition Classes
    MarkupParsers
  18. def anyUntil(chars: Char*): (BlockParsers.this)#TextParser

    Permalink

    Consumes any number of consecutive characters that are not one of the specified characters.

    Consumes any number of consecutive characters that are not one of the specified characters.

    This parser is identical to the anyBut parser except for two differences: this parser fails if it reaches the end of the input without seeing any of the specified characters and it also consumes this final character, without adding it to the result. This parser is usually used when a construct like a span enclosed between two characters needs to be parsed.

    Definition Classes
    MarkupParsers
  19. def anyWhile(p: (Char) ⇒ Boolean): (BlockParsers.this)#TextParser

    Permalink

    Consumes any number of consecutive characters which satisfy the specified predicate.

    Consumes any number of consecutive characters which satisfy the specified predicate. Always succeeds unless a minimum number of required matches is specified.

    Definition Classes
    MarkupParsers
  20. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  21. val atStart: (BlockParsers.this)#Parser[Unit]

    Permalink

    Succeeds at the start of the input.

    Succeeds at the start of the input.

    Definition Classes
    MarkupParsers
  22. lazy val atxHeader: (BlockParsers.this)#Parser[Header]

    Permalink

    Parses an ATX header, a line that starts with 1 to 6 '#' characters, with the number of hash characters corresponding to the level of the header.

    Parses an ATX header, a line that starts with 1 to 6 '#' characters, with the number of hash characters corresponding to the level of the header. Markdown also allows to decorate the line with trailing '#' characters which this parser will remove.

  23. val blankLine: (BlockParsers.this)#Parser[String]

    Permalink

    Parses a blank line from the current input offset (which may not be at the start of the line).

    Parses a blank line from the current input offset (which may not be at the start of the line). Fails for lines that contain any non-whitespace character. Does always produce an empty string as the result, discarding any whitespace characters found in the line.

    Since it also succeeds at the end of the input it should never be used in the form of (blankLine *) or (blankLine +). Use the blankLines parser instead in these cases.

    Definition Classes
    BlockParsers
  24. val blankLines: (BlockParsers.this)#Parser[List[String]]

    Permalink

    Parses one or more blanklines, producing a list of empty strings corresponding to the number of blank lines consumed.

    Parses one or more blanklines, producing a list of empty strings corresponding to the number of blank lines consumed.

    Definition Classes
    BlockParsers
  25. def block(firstLinePrefix: (BlockParsers.this)#Parser[Any], linePrefix: ⇒ (BlockParsers.this)#Parser[Any], nextBlockPrefix: ⇒ (BlockParsers.this)#Parser[Any]): (BlockParsers.this)#Parser[List[String]]

    Permalink

    Parses a full block based on the specified helper parsers.

    Parses a full block based on the specified helper parsers.

    firstLinePrefix

    parser that recognizes the start of the first line of this block

    linePrefix

    parser that recognizes the start of subsequent lines that still belong to the same block

    nextBlockPrefix

    parser that recognizes whether a line after one or more blank lines still belongs to the same block

    Definition Classes
    BlockParsers
  26. def blockList(p: ⇒ (BlockParsers.this)#Parser[Block]): (BlockParsers.this)#Parser[List[Block]]

    Permalink

    Builds a parser for a list of blocks based on the parser for a single block.

    Builds a parser for a list of blocks based on the parser for a single block.

    Definition Classes
    BlockParsers
  27. def bulletList: (BlockParsers.this)#Parser[BulletList]

    Permalink

    Parses a bullet list, called "unordered list" in the Markdown syntax description.

  28. val bulletListItemStart: (BlockParsers.this)#Parser[String]

    Permalink

    Parses the start of a bullet list item.

  29. def chainl1[T, U](first: ⇒ (BlockParsers.this)#Parser[T], p: ⇒ (BlockParsers.this)#Parser[U], q: ⇒ (BlockParsers.this)#Parser[(T, U) ⇒ T]): (BlockParsers.this)#Parser[T]

    Permalink
    Definition Classes
    Parsers
  30. def chainl1[T](p: ⇒ (BlockParsers.this)#Parser[T], q: ⇒ (BlockParsers.this)#Parser[(T, T) ⇒ T]): (BlockParsers.this)#Parser[T]

    Permalink
    Definition Classes
    Parsers
  31. def chainr1[T, U](p: ⇒ (BlockParsers.this)#Parser[T], q: ⇒ (BlockParsers.this)#Parser[(T, U) ⇒ U], combine: (T, U) ⇒ U, first: U): (BlockParsers.this)#Parser[U]

    Permalink
    Definition Classes
    Parsers
  32. implicit def charToTraversalble(char: Char): Traversable[Char]

    Permalink

    Implicit conversion that allows to pass a single character to the range-based anyIn parser.

    Implicit conversion that allows to pass a single character to the range-based anyIn parser.

    Definition Classes
    MarkupParsers
  33. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  34. def commit[T](p: ⇒ (BlockParsers.this)#Parser[T]): (BlockParsers.this)#Parser[T]

    Permalink
    Definition Classes
    Parsers
  35. def config(path: Path): (BlockParsers.this)#Parser[Either[InvalidBlock, Config]]

    Permalink
    Definition Classes
    BlockParsers
  36. def elem(e: (BlockParsers.this)#Elem): (BlockParsers.this)#Parser[(BlockParsers.this)#Elem]

    Permalink
    Definition Classes
    Parsers
  37. def elem(kind: String, p: ((BlockParsers.this)#Elem) ⇒ Boolean): (BlockParsers.this)#Parser[(BlockParsers.this)#Elem]

    Permalink
    Definition Classes
    Parsers
  38. def enumList: (BlockParsers.this)#Parser[EnumList]

    Permalink

    Parses an enumerated list, called "ordered list" in the Markdown syntax description.

  39. val enumListItemStart: (BlockParsers.this)#Parser[String]

    Permalink

    Parses the start of an enumerated list item.

  40. def eof: (BlockParsers.this)#Parser[String]

    Permalink

    Succeeds at the end of the input.

    Succeeds at the end of the input.

    Definition Classes
    MarkupParsers
  41. def eol: (BlockParsers.this)#Parser[String]

    Permalink

    Succeeds at the end of a line, including the end of the input.

    Succeeds at the end of a line, including the end of the input. Produces an empty string as a result and consumes any new line characters.

    Definition Classes
    MarkupParsers
  42. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  43. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  44. def err(msg: String): (BlockParsers.this)#Parser[Nothing]

    Permalink
    Definition Classes
    Parsers
  45. def failure(msg: String): (BlockParsers.this)#Parser[Nothing]

    Permalink
    Definition Classes
    Parsers
  46. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  47. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  48. def guard[T](p: ⇒ (BlockParsers.this)#Parser[T]): (BlockParsers.this)#Parser[T]

    Permalink
    Definition Classes
    Parsers
  49. def handleWhiteSpace(source: CharSequence, offset: Int): Int

    Permalink
    Attributes
    protected
    Definition Classes
    RegexParsers
  50. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  51. def indentedBlock(minIndent: Int = 1, linePredicate: ⇒ (BlockParsers.this)#Parser[Any] = success(()), endsOnBlankLine: Boolean = false, firstLineIndented: Boolean = false, maxIndent: Int = Int.MaxValue): (BlockParsers.this)#Parser[(BlockParsers.this)#IndentedBlock]

    Permalink

    Parses a full block based on the specified helper parsers, expecting an indentation for all lines except the first.

    Parses a full block based on the specified helper parsers, expecting an indentation for all lines except the first. The indentation may vary between the parts of the indented block, so that this parser only cuts off the minimum indentation shared by all lines, but each line must have at least the specified minimum indentation.

    minIndent

    the minimum indentation that each line in this block must have

    linePredicate

    parser that recognizes the start of subsequent lines that still belong to the same block

    endsOnBlankLine

    indicates whether parsing should end on the first blank line

    firstLineIndented

    indicates whether the first line is expected to be indented, too

    maxIndent

    the maximum indentation that will get dropped from the start of each line of the result

    returns

    a parser that produces an instance of IndentedBlock

    Definition Classes
    BlockParsers
  52. val insignificantSpaces: (BlockParsers.this)#Parser[String]

    Permalink

    Parses up to 3 space characters.

    Parses up to 3 space characters. In Markdown an indentation of up to 3 spaces is optional and does not have any influence on the parsing logic.

  53. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  54. def linesToString(lines: List[String]): String

    Permalink

    Merges the specified list of lines into a single string, while looking for lines ending with double spaces which stand for a hard line break in Markdown.

  55. def list[T <: Block, I <: ListItem](itemStart: (BlockParsers.this)#Parser[String], newList: (List[ListItem]) ⇒ T, newItem: (Int, List[Block]) ⇒ I): (BlockParsers.this)#Parser[T]

    Permalink

    Parses a list based on the specified helper parsers.

    Parses a list based on the specified helper parsers.

    itemStart

    parser that recognizes the start of a list item, result will be discarded

    newList

    function that produces a block element for the document tree

    newItem

    function that produces a new list item element based on position and content arguments

  56. def listItem[I <: ListItem](itemStart: (BlockParsers.this)#Parser[String]): (BlockParsers.this)#Parser[List[Block]]

    Permalink

    Parses a single list item.

    Parses a single list item.

    itemStart

    parser that recognizes the start of a list item, result will be discarded

  57. implicit def literal(s: String): (BlockParsers.this)#Parser[String]

    Permalink
    Definition Classes
    RegexParsers
  58. val literalBlock: (BlockParsers.this)#Parser[LiteralBlock]

    Permalink

    Parses a literal block, text indented by a tab or 4 spaces.

  59. def log[T](p: ⇒ (BlockParsers.this)#Parser[T])(name: String): (BlockParsers.this)#Parser[T]

    Permalink
    Definition Classes
    Parsers
  60. def lookBehind[T](offset: Int, parser: ⇒ (BlockParsers.this)#Parser[T]): (BlockParsers.this)#Parser[T]

    Permalink

    Applies the specified parser at the specified offset behind the current position.

    Applies the specified parser at the specified offset behind the current position. Never consumes any input.

    Definition Classes
    BaseParsers
  61. val maxNestLevel: Int

    Permalink

    The maximum level of block nesting.

    The maximum level of block nesting. Some block types like lists and blockquotes contain nested blocks. To protect against malicious input or accidentally broken markup, the level of nesting is restricted.

    Definition Classes
    BlockParsers
  62. def mdBlock(firstLinePrefix: (BlockParsers.this)#Parser[Any], linePrefix: (BlockParsers.this)#Parser[Any], nextBlockPrefix: (BlockParsers.this)#Parser[Any]): (BlockParsers.this)#Parser[List[String]]

    Permalink

    Parses a single Markdown block.

    Parses a single Markdown block. In contrast to the generic block parser of the super-trait this method also consumes and ignores up to three optional space characters at the start of each line.

    firstLinePrefix

    parser that recognizes the start of the first line of this block

    linePrefix

    parser that recognizes the start of subsequent lines that still belong to the same block

    nextBlockPrefix

    parser that recognizes whether a line after one or more blank lines still belongs to the same block

  63. def mkList[T]: ((BlockParsers.this)#~[T, List[T]]) ⇒ List[T]

    Permalink
    Definition Classes
    Parsers
  64. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  65. def nestLevel(reader: (BlockParsers.this)#Input): Int

    Permalink

    Returns the current nest level from the specified input or 0 if it cannot be determined.

    Returns the current nest level from the specified input or 0 if it cannot be determined.

    The nest level is usually only used to prevent endless recursion of nested blocks.

    Definition Classes
    BlockParsers
  66. final lazy val nestedBlock: (BlockParsers.this)#Parser[Block]

    Permalink

    Parses any kind of nested block supported by a concrete markup language.

    Parses any kind of nested block supported by a concrete markup language.

    Definition Classes
    BlockParsers
  67. def nestedParagraph: (BlockParsers.this)#Parser[Block]

    Permalink

    Parses a single paragraph nested inside another block.

    Parses a single paragraph nested inside another block. Markdown allows nested lists without preceding blank lines, therefore will detect list items in the middle of a parapraph, whereas a top level paragraph won't do that. One of the questionable Markdown design decisions.

  68. def nonRecursiveBlock: (BlockParsers.this)#Parser[Block]

    Permalink

    Parses reStructuredText blocks, except for blocks that allow nesting of blocks.

    Parses reStructuredText blocks, except for blocks that allow nesting of blocks. Only used in rare cases when the maximum nest level allowed had been reached

    Definition Classes
    BlockParsersBlockParsers
  69. def not[T](p: ⇒ (BlockParsers.this)#Parser[T]): (BlockParsers.this)#Parser[Unit]

    Permalink
    Definition Classes
    Parsers
  70. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  71. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  72. def opt[T](p: ⇒ (BlockParsers.this)#Parser[T]): (BlockParsers.this)#Parser[Option[T]]

    Permalink
    Definition Classes
    Parsers
  73. val optSpace: (BlockParsers.this)#Parser[String]

    Permalink

    Parses 0 or 1 space character, always succeeds.

  74. def optimizedCharLookup(chars: Char*): (Char) ⇒ Boolean

    Permalink

    Returns an optimized, Array-based lookup function for the specified characters.

    Returns an optimized, Array-based lookup function for the specified characters.

    Attributes
    protected
    Definition Classes
    MarkupParsers
  75. def optimizedRangeLookup(ranges: Traversable[Char]*): (Char) ⇒ Boolean

    Permalink

    Returns an optimized, Array-based lookup function for the specified ranges of characters.

    Returns an optimized, Array-based lookup function for the specified ranges of characters.

    Attributes
    protected
    Definition Classes
    MarkupParsers
  76. def paragraph: (BlockParsers.this)#Parser[Paragraph]

    Permalink

    Parses a single paragraph.

    Parses a single paragraph. Everything between two blank lines that is not recognized as a special Markdown block type will be parsed as a regular paragraph.

  77. def parse[T](p: (BlockParsers.this)#Parser[T], in: Reader): (BlockParsers.this)#ParseResult[T]

    Permalink
    Definition Classes
    RegexParsers
  78. def parse[T](p: (BlockParsers.this)#Parser[T], in: CharSequence): (BlockParsers.this)#ParseResult[T]

    Permalink
    Definition Classes
    RegexParsers
  79. def parse[T](p: (BlockParsers.this)#Parser[T], in: Reader[Char]): (BlockParsers.this)#ParseResult[T]

    Permalink
    Definition Classes
    RegexParsers
  80. def parseAll[T](p: (BlockParsers.this)#Parser[T], in: CharSequence): (BlockParsers.this)#ParseResult[T]

    Permalink
    Definition Classes
    RegexParsers
  81. def parseAll[T](p: (BlockParsers.this)#Parser[T], in: Reader): (BlockParsers.this)#ParseResult[T]

    Permalink
    Definition Classes
    RegexParsers
  82. def parseAll[T](p: (BlockParsers.this)#Parser[T], in: Reader[Char]): (BlockParsers.this)#ParseResult[T]

    Permalink
    Definition Classes
    RegexParsers
  83. def parseConfigAndRoot(reader: Reader[Char], path: Path): (Config, RootElement)

    Permalink

    Fully parses the input from the specified reader and returns the configuration and root element.

    Fully parses the input from the specified reader and returns the configuration and root element.

    Attributes
    protected
    Definition Classes
    BlockParsers
  84. def parseDocument(reader: Reader[Char], path: Path): Document

    Permalink

    Fully parses the input from the specified reader and returns the document tree.

    Fully parses the input from the specified reader and returns the document tree. This function is expected to always succeed, errors would be considered a bug of this library, as the parsers treat all unknown or malformed markup as regular text.

    Definition Classes
    BlockParsers
  85. def parseMarkup[T](parser: (BlockParsers.this)#Parser[T], reader: Reader[Char]): T

    Permalink

    Fully parses the input from the specified reader and returns the result.

    Fully parses the input from the specified reader and returns the result. This function is expected to always succeed, errors would be considered a bug in this library, as the parsers treat all unknown or malformed markup as regular text.

    Definition Classes
    MarkupParsers
  86. def parseMarkup[T](parser: (BlockParsers.this)#Parser[T], source: String): T

    Permalink

    Fully parses the specified input string and returns the result.

    Fully parses the specified input string and returns the result. This function is expected to always succeed, errors would be considered a bug in this library, as the parsers treat all unknown or malformed markup as regular text.

    Definition Classes
    MarkupParsers
  87. def parseNestedBlocks(block: (BlockParsers.this)#IndentedBlock): List[Block]

    Permalink

    Parses all nested blocks inside the specified indented block.

    Parses all nested blocks inside the specified indented block.

    Definition Classes
    BlockParsers
  88. def parseNestedBlocks(input: String, nestLevel: Int): List[Block]

    Permalink

    Parses all nested blocks for the specified input and nest level.

    Parses all nested blocks for the specified input and nest level. Delegates to the abstract nestedBlock parser that sub-traits need to define. The nest level is primarily used as a protection against malicious input that forces endless recursion.

    input

    the input to parse

    nestLevel

    the level of nesting with 0 being the outermost level

    returns

    the parser result as a list of blocks

    Definition Classes
    BlockParsers
  89. def parseNestedBlocks(lines: List[String], nestLevel: Int): List[Block]

    Permalink

    Parses all nested blocks for the specified input and nest level.

    Parses all nested blocks for the specified input and nest level. Delegates to the abstract nestedBlock parser that sub-traits need to define. The nest level is primarily used as a protection against malicious input that forces endless recursion.

    lines

    the input to parse

    nestLevel

    the level of nesting with 0 being the outermost level

    returns

    the parser result as a list of blocks

    Definition Classes
    BlockParsers
  90. def parseParagraph(lines: List[String]): Paragraph

    Permalink
  91. def phrase[T](p: (BlockParsers.this)#Parser[T]): (BlockParsers.this)#Parser[T]

    Permalink
    Definition Classes
    RegexParsers → Parsers
  92. def positioned[T <: Positional](p: ⇒ (BlockParsers.this)#Parser[T]): (BlockParsers.this)#Parser[T]

    Permalink
    Definition Classes
    RegexParsers → Parsers
  93. def prepareBlockParsers(nested: Boolean): List[(BlockParsers.this)#Parser[Block]]

    Permalink

    Extension hook for assembling the block parsers for a particular markup format.

    Extension hook for assembling the block parsers for a particular markup format.

    nested

    true if these are parsers for nested blocks, false if they are for top level blocks

    returns

    a list of block parsers which later will be interpreted as choices in the specified order

    Attributes
    protected
    Definition Classes
    BlockParsersBlockParsers
  94. def quotedBlock: (BlockParsers.this)#Parser[QuotedBlock]

    Permalink

    Parses a quoted block, a paragraph starting with a '>' character, with subsequent lines optionally starting with a '>', too.

  95. val refName: (BlockParsers.this)#Parser[String]

    Permalink

    Parses a simple reference name that only allows alphanumerical characters and the punctuation characters -, _, ., :, +.

    Parses a simple reference name that only allows alphanumerical characters and the punctuation characters -, _, ., :, +.

    Definition Classes
    MarkupParsers
  96. implicit def regex(r: Regex): (BlockParsers.this)#Parser[String]

    Permalink
    Definition Classes
    RegexParsers
  97. def rep[T](first: ⇒ (BlockParsers.this)#Parser[T], next: (T) ⇒ (BlockParsers.this)#Parser[T]): (BlockParsers.this)#Parser[List[T]]

    Permalink

    A parser generator for repetitions where all subsequent parsers after the first depend on the result of the previous.

    A parser generator for repetitions where all subsequent parsers after the first depend on the result of the previous.

    first

    the parser to use for the first piece of input

    next

    a function that determines the next parser based on the result of the previous

    Definition Classes
    BaseParsers
  98. def rep[T](p: ⇒ (BlockParsers.this)#Parser[T]): (BlockParsers.this)#Parser[List[T]]

    Permalink
    Definition Classes
    Parsers
  99. def rep1[T](first: ⇒ (BlockParsers.this)#Parser[T], p0: ⇒ (BlockParsers.this)#Parser[T]): (BlockParsers.this)#Parser[List[T]]

    Permalink
    Definition Classes
    Parsers
    Annotations
    @migration
    Migration

    (Changed in version 2.9.0) The p0 call-by-name arguments is evaluated at most once per constructed Parser object, instead of on every need that arises during parsing.

  100. def rep1[T](p: ⇒ (BlockParsers.this)#Parser[T]): (BlockParsers.this)#Parser[List[T]]

    Permalink
    Definition Classes
    Parsers
  101. def rep1sep[T](p: ⇒ (BlockParsers.this)#Parser[T], q: ⇒ (BlockParsers.this)#Parser[Any]): (BlockParsers.this)#Parser[List[T]]

    Permalink
    Definition Classes
    Parsers
  102. def repMax[T](num: Int, p: ⇒ (BlockParsers.this)#Parser[T]): (BlockParsers.this)#Parser[List[T]]

    Permalink

    Uses the parser for at most the specified number of repetitions, always succeeds.

    Uses the parser for at most the specified number of repetitions, always succeeds. The result is the list of results from applying the parser repeatedly.

    Definition Classes
    BaseParsers
  103. def repMin[T](num: Int, p: ⇒ (BlockParsers.this)#Parser[T]): (BlockParsers.this)#Parser[List[T]]

    Permalink

    Uses the parser for at least the specified number of repetitions or otherwise fails.

    Uses the parser for at least the specified number of repetitions or otherwise fails. Continues to apply the parser after the minimum has been reached until if fails. The result is the list of results from applying the parser repeatedly.

    Definition Classes
    BaseParsers
  104. def repN[T](num: Int, p: ⇒ (BlockParsers.this)#Parser[T]): (BlockParsers.this)#Parser[List[T]]

    Permalink
    Definition Classes
    Parsers
  105. def repsep[T](p: ⇒ (BlockParsers.this)#Parser[T], q: ⇒ (BlockParsers.this)#Parser[Any]): (BlockParsers.this)#Parser[List[T]]

    Permalink
    Definition Classes
    Parsers
  106. def restOfLine: (BlockParsers.this)#Parser[String]

    Permalink

    Parses the rest of the line from the current input offset no matter whether it consist of whitespace only or some text.

    Parses the rest of the line from the current input offset no matter whether it consist of whitespace only or some text. Does not include the eol character(s).

    Definition Classes
    BlockParsers
  107. def rootElement: (BlockParsers.this)#Parser[RootElement]

    Permalink

    Parses a full document, delegating most of the work to the topLevelBlock parser.

    Parses a full document, delegating most of the work to the topLevelBlock parser.

    Definition Classes
    BlockParsers
  108. lazy val rule: (BlockParsers.this)#Parser[Block]

    Permalink

    Parses a horizontal rule, a line only decorated with three or more '*', '-' or '_' characters with optional spaces between them

  109. lazy val setextHeader: (BlockParsers.this)#Parser[Header]

    Permalink

    Parses a 1st or 2nd level Setext header.

    Parses a 1st or 2nd level Setext header. A first level header consists of the text of the header followed by a line of one or more '=' characters, a 2nd level header uses '-' characters instead.

    In contrast to several other Markdown parsers this parser requires a blank line before the header.

  110. def skipWhitespace: Boolean

    Permalink
    Definition Classes
    MarkupParsers → RegexParsers
  111. def standardMarkdownBlock: (BlockParsers.this)#Parser[Block]

    Permalink

    Parses all of the standard Markdown blocks, except normal paragraphs and those blocks that deal with verbatim HTML.

    Parses all of the standard Markdown blocks, except normal paragraphs and those blocks that deal with verbatim HTML. For the latter parsers are provided by a separate, optional trait.

  112. def success[T](v: T): (BlockParsers.this)#Parser[T]

    Permalink
    Definition Classes
    Parsers
  113. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  114. val tabOrSpace: (BlockParsers.this)#Parser[Any]

    Permalink

    Parses a single tab or space character.

  115. val textLine: (BlockParsers.this)#Parser[String]

    Permalink

    Parses a single text line from the current input offset (which may not be at the start of the line.

    Parses a single text line from the current input offset (which may not be at the start of the line. Fails for blank lines. Does not include the eol character(s).

    Definition Classes
    BlockParsers
  116. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  117. final lazy val topLevelBlock: (BlockParsers.this)#Parser[Block]

    Permalink

    Parses any kind of top-level block supported by a concrete markup language.

    Parses any kind of top-level block supported by a concrete markup language.

    Definition Classes
    BlockParsers
  118. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  119. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  120. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  121. val whiteSpace: Regex

    Permalink
    Attributes
    protected
    Definition Classes
    RegexParsers
  122. def withNestLevel[T](p: ⇒ (BlockParsers.this)#Parser[T]): (BlockParsers.this)#Parser[(Int, T)]

    Permalink

    Creates a new parser that produces a tuple containing the current nest level as well as the result from the specified parser.

    Creates a new parser that produces a tuple containing the current nest level as well as the result from the specified parser.

    The nest level is usually only used to prevent endless recursion of nested blocks.

    Definition Classes
    BlockParsers
  123. def ws: (BlockParsers.this)#TextParser

    Permalink

    Parses horizontal whitespace (space and tab).

    Parses horizontal whitespace (space and tab). Always succeeds, consuming all whitespace found.

    Definition Classes
    MarkupParsers

Inherited from parse.BlockParsers

Inherited from MarkupParsers

Inherited from BaseParsers

Inherited from RegexParsers

Inherited from Parsers

Inherited from AnyRef

Inherited from Any

Ungrouped