matchgen
Generate Rust functions to quickly map byte string prefixes to values (by danielparks)
rust-phf
Compile time static maps for Rust (by sfackler)
matchgen | rust-phf | |
---|---|---|
2 | 15 | |
0 | 1,721 | |
- | 1.2% | |
6.4 | 4.8 | |
about 2 months ago | about 1 month ago | |
Rust | Rust | |
Apache License 2.0 | MIT License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
matchgen
Posts with mentions or reviews of matchgen.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-06-08.
-
Why isn't clippy warning me?
I’ve been enabling most of the pedantic lints on most of my projects. I was kind of surprised this isn’t part of the pedantic lint group, but it’s part of the restriction group. Looking through that list there are some other lints I’ll probably want to enable.
-
What's everyone working on this week (4/2023)?
I’m experimenting with generating code that matches sequences at the start of an iterator. Basically, I give it a bunch of byte strings and what they map to, and it produces a giant match block that evaluates them.
rust-phf
Posts with mentions or reviews of rust-phf.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-02-19.
-
Railwind 0.1.2 - A Tailwind compiler rewritten in Rust
could you create compile-time maps with https://github.com/rust-phf/rust-phf ? that way you don't pay the performance penalty of reading the ron files at runtime
-
Static reference to generic implementation
However I'm still stuck for the matching between packet and handler. Phf map (static maps) doesn't support mapping to enum so I have to make a matching clause :
-
What's everyone working on this week (4/2023)?
Have you seen the crate phf?
-
Hey Rustaceans! Got a question? Ask here! (37/2022)!
Maybe phf will come handy?
-
const string memory usage question
This is sort of an aside, but turning a not small index into a match statement is probably going to use more memory than the base data and suck for compile time. Might be smarter to include the index as bytes for ex with include! and interpret it directly. You could precompile a hash table with something like rust-phf: https://github.com/rust-phf/rust-phf.
-
How to pass data from build script to binary crate?
A great example of how this is typically done is the phf crate: https://github.com/rust-phf/rust-phf
-
Be still my static heart
https://github.com/rust-phf/rust-phf comes to mind.
-
How does Rust implement matching against strings?
If you’re looking for something like gperf: https://github.com/rust-phf/rust-phf
- Announcing Rust 1.56.0 and Rust 2021
-
Memory efficient hashmap?
Are all the keys known at compile-time? If so https://github.com/rust-phf/rust-phf might be best.
What are some alternatives?
When comparing matchgen and rust-phf you can also consider the following projects:
htmlize - Rust crate to encode and decode HTML entities in UTF-8 according to the standard
parallel-hashmap - A family of header-only, very fast and memory-friendly hashmap and btree containers.