1[package] 2name = "ahash" 3version = "0.7.6" 4authors = ["Tom Kaitchuck <Tom.Kaitchuck@gmail.com>"] 5license = "MIT OR Apache-2.0" 6description = "A non-cryptographic hash function using AES-NI for high performance" 7documentation = "https://docs.rs/ahash" 8repository = "https://github.com/tkaitchuck/ahash" 9keywords = ["hash", "hasher", "hashmap", "aes", "no-std"] 10categories = ["algorithms", "data-structures", "no-std"] 11edition = "2018" 12readme = "README.md" 13build = "./build.rs" 14exclude = ["/smhasher", "/benchmark_tools"] 15 16[lib] 17name = "ahash" 18path = "src/lib.rs" 19test = true 20doctest = true 21bench = true 22doc = true 23 24[features] 25default = ["std"] 26 27# Enabling this will enable `AHashMap` and `AHashSet`. 28std = [] 29 30# This is an alternitive to runtime key generation which does compile time key generation if getrandom is not available. 31# (If getrandom is available this does nothing.) 32# If this is on (and getrandom is off) it implies the produced binary will not be identical. 33# If this is disabled and gerrandom is unavailable constant keys are used. 34compile-time-rng = ["const-random"] 35 36[[bench]] 37name = "ahash" 38path = "tests/bench.rs" 39harness = false 40 41[[bench]] 42name = "map" 43path = "tests/map_tests.rs" 44harness = false 45 46[profile.test] 47opt-level = 2 48lto = 'fat' 49 50[profile.release] 51opt-level = 3 52debug = false 53lto = 'fat' 54debug-assertions = false 55codegen-units = 1 56 57[profile.bench] 58opt-level = 3 59debug = false 60lto = 'fat' 61debug-assertions = false 62codegen-units = 1 63 64[build-dependencies] 65version_check = "0.9" 66 67[target.'cfg(any(target_os = "linux", target_os = "android", target_os = "windows", target_os = "macos", target_os = "ios", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd", target_os = "dragonfly", target_os = "solaris", target_os = "illumos", target_os = "fuchsia", target_os = "redox", target_os = "cloudabi", target_os = "haiku", target_os = "vxworks", target_os = "emscripten", target_os = "wasi"))'.dependencies] 68getrandom = { version = "0.2.3" } 69const-random = { version = "0.1.12", optional = true } 70serde = { version = "1.0.117", optional = true } 71 72[target.'cfg(not(any(target_os = "linux", target_os = "android", target_os = "windows", target_os = "macos", target_os = "ios", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd", target_os = "dragonfly", target_os = "solaris", target_os = "illumos", target_os = "fuchsia", target_os = "redox", target_os = "cloudabi", target_os = "haiku", target_os = "vxworks", target_os = "emscripten", target_os = "wasi")))'.dependencies] 73const-random = { version = "0.1.12", optional = true } 74serde = { version = "1.0.117", optional = true } 75 76[target.'cfg(not(all(target_arch = "arm", target_os = "none")))'.dependencies] 77once_cell = { version = "1.8", default-features = false, features = ["alloc"] } 78 79[dev-dependencies] 80no-panic = "0.1.10" 81criterion = {version = "0.3.2"} 82seahash = "4.0" 83fnv = "1.0.5" 84fxhash = "0.2.1" 85hex = "0.4.2" 86rand = "0.7.3" 87serde_json = "1.0.59" 88 89[package.metadata.docs.rs] 90rustc-args = ["-C", "target-feature=+aes"] 91rustdoc-args = ["-C", "target-feature=+aes"] 92features = ["std"] 93