21 lines
1.6 KiB
Markdown
21 lines
1.6 KiB
Markdown
# Frostwalker
|
|
*Frostwalker is not stable nor ready for dependency development yet. Unless you plan to implement your own formatter, please wait for 0.1.0 to release. 0.0 versions are placeholders and will not be tagged.*
|
|
|
|
A TOML-like configuration language parser for Rust. At present, the crate has a lexer and an incomplete validator with unit tests written for common cases. A formatter will eventually be added.
|
|
|
|
## Justification
|
|
The Rust crate `toml` pulls in 8 other crates to do its job, including `serde`. While this may not be irksome to basically most Rust developers, I'm used to using severely underpowered Intel hardware so low compile times is a big focus for me so a crate made by me that requires only the standard library compared to one that requires other dependencies is preferrable.
|
|
|
|
I've also wanted to write a lexer, validator and parser stack for a language and configuration languages are much, much simpler than programming languages like C, Python, and Rust so it is easier to implement these things in a configuration language.
|
|
|
|
This was mainly made for my web server, herb, where I want to keep dependencies as low as possible just for fun but also for compile times as well. At present, the only dependency for herb is my packet library Packeteer to make the HTTP protocol code more seperated from herb.
|
|
|
|
I also use a TOML-like language instead of TOML directly as I don't need all the features of TOML nor do I want to implement parsing for all the features of TOML.
|
|
|
|
## What features are supported at the moment?
|
|
* Keys
|
|
* Values
|
|
* The equals sign
|
|
* Booleans
|
|
* Integers
|
|
* Arrays (single depth only)
|