class

Luce::InlineSyntax

Inherits Reference < Object

Represents one kind of Markdown tag that can be parsed.

Constructors

new(pattern : String, start_character : Int32 | Nil = nil, case_sensitive : Bool = true)

Creates a new InlineSyntax which matches text on pattern.

If start_character is passed, it is used as a pre-matching check which is faster than matching against pattern.

If case_sensitive is disabled, then case is ignored when matching the pattern.

Instance methods

matches?(parser : InlineParser, start_match_pos : Int32 | Nil = nil) : Bool

Tries to match at the parser's current position.

The parser's position can be overriden with start_match_pos. Return whether or not the pattern successfully matched.

on_match(parser : InlineParser, match : Regex::MatchData) : Bool

Processes match, adding nodes to parser and possibly advancing parser.

Will return whether the caller should advance parser by match[0].size.

pattern