Documentation
  • Coverage
  • 100%
    6 out of 6 items documented2 out of 6 items with examples
  • Size
  • Source code size: 38.94 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 1.89 MB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 13s Average build duration of successful builds.
  • all releases: 15s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • fuad1502/jlek
    1 0 2
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • fuad1502

JLEK 🪞

CI

[!NOTE] This project is part of the "Compiler Toys" project, originally meant as a learning exercise on Compilers.

JLEK is a lexer generator similar to Lex. JLEK generates a lexer module from token specifications (identifier and regular expression pattern).

JLEK is the lexer used by JJIK parser generator. Currently, JLEK cannot be used standalone without JJIK, since the generated lexer module (lexer.rs) depends on a module generated by JJIK (symbol.rs).

[!WARNING] Currently JLEK ignores whitespace characters (space, newline, tab, carriege return) by default. Later, user should be able to specify the class of characters to treat as separators.

Documentation

See the crate's documentation on how to use JLEK and the supported regular expression syntax.

Why is it called JLEK?

The "LEK" in JLEK is similar to Lex, a well known lexer generator. I added the 'J' in front of it to match it with JJIK while also making it sound like the Indonesian word jelek which means "ugly" :)