SequentialParser

An implementation of IMfmParser that sequentially searches for substrings using multiple other MFM parsers. We expect the input string to satisfy all IMfmParser passed to parsers, and if any one of the parsers fails, this implementation will also treat the search as failed.

Parameters

parsers

A collection of IMfmParser to be used for searching.

Constructors

Link copied to clipboard
constructor(parsers: Collection<IMfmParser>)
constructor(vararg parsers: IMfmParser)

Functions

Link copied to clipboard
open override fun find(input: String, startAt: Int, context: IMfmParserContext): IMfmParserResult

Finds a substring in the input string starting from a given index.

Link copied to clipboard
open fun not(): IMfmParser

Returns a negative (not) version of the current MFM parser. A negative parser will return a failure result if the substring is found.

Link copied to clipboard
open fun optional(): IMfmParser

Returns an optional version of the current substring parser. An optional parser will return a successful result even if the substring is not found.