TokenRegexPattern

data class TokenRegexPattern(val name: String, val wrap: (TokenData) -> Token, val regex: Regex, val groupNames: List<String> = emptyList(), val walker: (CharSequence) -> WalkerParser<*>? = null) : NamedRegexPattern

A Regex pattern that captures a corresponding Node from a raw string.

Parameters

name

name of this pattern. A name should not contain special characters (including underscores) in order to prevent Regex compilation errors

wrap

a function that wraps a general token into its specific wrapper

regex

regex pattern to match

groupNames

names of the named groups that appear the regex pattern

walker

if present, upon being captured, produces a WalkerParser that scans the given CharSequence source in case regex does not suffice to capture complex tokens

Constructors

Link copied to clipboard
constructor(name: String, wrap: (TokenData) -> Token, regex: Regex, groupNames: List<String> = emptyList(), walker: (CharSequence) -> WalkerParser<*>? = null)

Properties

Link copied to clipboard
Link copied to clipboard
open override val name: String
Link copied to clipboard
open override val regex: Regex
Link copied to clipboard
val walker: (CharSequence) -> WalkerParser<*>? = null
Link copied to clipboard
val wrap: (TokenData) -> Token