ExpectedOptional

An optional branch. This expectation is always met (always returns a success), even when we have run out of tokens.

The returned success has an empty map if we have ran out of tokens (token drought) or if the branch does not match. Otherwise, the map is the one returned by the branch (so it passes directly all the matched stuff).

Constructors

Link copied to clipboard
constructor(expectations: List<Expectation<T, R>>)

Functions

Link copied to clipboard
open override fun matches(context: ParsingContext, index: Int): ExpectationResult<T>

Check if this expectation matches the given context at the given index among the context's tokens list.

Properties

Link copied to clipboard

The name of the argument where the result of this expectation should be stored, or null if the matched value of this expectation should not or cannot be stored.

Link copied to clipboard
open override val title: String

Title of this expectation. This should be a shortened description of what this expectation is. For example, an expectation for a node could have the title expect(SomeNode). If possible and legible, this title should be similar to the DSL expression for creating the expectation