handles/lexer

Types

pub type LexError {
  UnbalancedTag(start: Int, end: Int)
  SyntaxError(errors: List(SyntaxError))
}

Constructors

  • UnbalancedTag(start: Int, end: Int)
  • SyntaxError(errors: List(SyntaxError))
pub type SyntaxError {
  MissingBody(start: Int, end: Int)
  MissingBlockKind(start: Int, end: Int)
  UnexpectedBlockArgument(start: Int, end: Int)
}

Constructors

  • MissingBody(start: Int, end: Int)
  • MissingBlockKind(start: Int, end: Int)
  • UnexpectedBlockArgument(start: Int, end: Int)
pub type Token {
  Constant(start: Int, end: Int, value: String)
  Property(start: Int, end: Int, path: List(String))
  BlockStart(
    start: Int,
    end: Int,
    kind: String,
    path: List(String),
  )
  BlockEnd(start: Int, end: Int, kind: String)
}

Constructors

  • Constant(start: Int, end: Int, value: String)
  • Property(start: Int, end: Int, path: List(String))
  • BlockStart(
      start: Int,
      end: Int,
      kind: String,
      path: List(String),
    )
  • BlockEnd(start: Int, end: Int, kind: String)

Functions

pub fn run(template: String) -> Result(List(Token), LexError)
Search Document