module

Hecr::LSP::Completion

Completion context for the text before the cursor. Works across line breaks, so attributes complete inside multi-line tags; > inside quoted values or {...} expressions does not end the tag.

Constants

BALANCED = /"[^"]*"|'[^']*'|\{(?:[^{}]|\{[^{}]*\})*\}/
CLASS = {":class", ":class={class names} (scoped CSS modules)"}
COMPONENT_SPECIALS = [IF, FOR, KEY, LET]
ELEMENT_SPECIALS = [IF, FOR, KEY, CLASS]

The special attributes the parser accepts per tag kind (check_allowed). :class is element-only; :let is component-only.

FOR = {":for", ":for={pattern <- enumerable}"}
IF = {":if", ":if={condition}"}
KEY = {":key", ":key={expression} (with :for)"}
LET = {":let", ":let={pattern}"}

Instance methods

context(before_cursor : String) : ComponentContext | AttributeContext | ElementContext | Nil
Source

Nested types