Indents in npeg

    Dark Mode
Search:
Group by:

Grammar ib

EOL <- "rn" | "n" | "r" | !1

whitespace <- *Blank

Indent <- >whitespace
Ensure that the indent has increased, add to indent stack
Dedent <- >whitespace
Ensure that the indent has decreased, pop from the indent stack
Static <- >whitespace
Ensure that the indent has not changed
Line(content) <- ib.Static * content * ib.EOL
Properly formatted indent-checked line. Content is the line parser
Block(content) <- &ib.Indent * content * (&ib.Dedent | !1)
Properly formatted indented block. Content is ensured to be intdented

Vars

indentStack = newSeq(Natural(0))
  Source Edit

Procs

proc resetIndent() {...}{.raises: [], tags: [].}
Remove all indent data   Source Edit

Templates

template indent(): int
Get the current indent level   Source Edit
template top[T](s: seq[T]): T
A utility to find the top-most item of a seq   Source Edit