Module rsjsonnet_lang::lexer

source ·
Expand description

A lexer for the Jsonnet language.

§Example

let source = b"local add_one(x) = x + 1; add_one(2)";

let str_interner = rsjsonnet_lang::interner::StrInterner::new();
let mut span_mgr = rsjsonnet_lang::span::SpanManager::new();
let (span_ctx, _) = span_mgr.insert_source_context(source.len());

// Create the lexer
let lexer = rsjsonnet_lang::lexer::Lexer::new(&str_interner, &mut span_mgr, span_ctx, source);

// Lex the whole input.
let tokens = lexer.lex_to_eof(false).unwrap();

Structs§

Enums§