#lexer #lossless #logo #lsp #token #source-pawn #sourcepawn

sourcepawn_lexer

Lossless SourcePawn lexer

7 releases

0.3.0 Jan 2, 2025
0.2.1 Jul 23, 2024
0.2.0 Feb 16, 2024
0.1.3 Feb 11, 2024
0.1.0 Jun 2, 2023

#14 in #logo

Download history 2/week @ 2024-09-18 5/week @ 2024-09-25 8/week @ 2024-10-02 1/week @ 2024-12-04 12/week @ 2024-12-11 269/week @ 2025-01-01

282 downloads per month

MIT license

41KB
1K SLoC

Sourcepawn Lexer

Lossless Sourcepawn lexer build using Logos

Crates.io Crates.io Github release status Code coverage GitHub

Example

use sourcepawn_lsp::lexer::SourcepawnLexer;

fn main() {
    let lexer = SourcepawnLexer::new("int foo = 0;");
    for token in lexer {
        match token.token_kind {
            TokenKind::Literal(_) | TokenKind::Comment(_) => println("{:#?}", token.text()),
            _ => (),
        }
    }
}

Dependencies

~7–10MB
~146K SLoC