[−][src]Crate phf
Compile-time generated maps and sets.
The phf::Map and phf::Set types have roughly comparable performance to
a standard hash table, but can be generated as compile-time static values.
Usage
If the macros Cargo feature is enabled, the phf_map, phf_set,
phf_ordered_map, and phf_ordered_set macros can be used to construct
the PHF type. This currently requires a nightly compiler.
[dependencies]
phf = { version = "0.7.24", features = ["macros"] }
#![feature(proc_macro_hygiene)] use phf::{phf_map, phf_set}; static MY_MAP: phf::Map<&'static str, u32> = phf_map! { "hello" => 1, "world" => 2, }; static MY_SET: phf::Set<&'static str> = phf_set! { "hello world", "hola mundo", }; fn main() { assert_eq!(MY_MAP["hello"], 1); assert!(MY_SET.contains("hello world")); }
Alternatively, you can use the phf_codegen crate to generate PHF datatypes in a build script. This method can be used with a stable compiler.
Modules
| map | An immutable map constructed at compile time. |
| ordered_map | An order-preserving immutable map constructed at compile time. |
| ordered_set | An order-preserving immutable set constructed at compile time. |
| set | An immutable set constructed at compile time. |
Structs
| Map | An immutable map constructed at compile time. |
| OrderedMap | An order-preserving immutable map constructed at compile time. |
| OrderedSet | An order-preserving immutable set constructed at compile time. |
| Set | An immutable set constructed at compile time. |
Traits
| PhfHash | A trait implemented by types which can be used in PHF data structures. |