#lexer #luau #luau-lexer

luau-lexer

A lexer for the luau language

5 releases

Uses new Rust 2024

new 0.2.5 Apr 15, 2025
0.2.4 Apr 10, 2025
0.1.0 Apr 7, 2025

#9 in #luau

Download history 82/week @ 2025-04-01 497/week @ 2025-04-08

579 downloads per month
Used in luau-parser

MIT license

50KB
1K SLoC

Luau Lexer

A lossless lexer for the luau programming language. Lexes source code into tokens while preserving all spaces and comments.

Usage

use luau_lexer::prelude::{Lexer, TokenType};
let code = r#"local foo = "Hello, World!""#;
let mut lexer = Lexer::new(code);
let mut token = lexer.next_token();
while token != TokenType::EndOfFile {
    println!("{token:?}");
    token = lexer.next_token();
}

Note

  • This lexer does not stop parsing when it finds an error
  • This lexer only lexes each token when asked to do so.

Dependencies

~185KB