Skip to content

Commit

Permalink
Bug 1631721 - Vendor the hashbrown crate r=manishearth
Browse files Browse the repository at this point in the history
This is the hash map implementation now used in the Rust standard library:

* https://blog.rust-lang.org/2019/07/04/Rust-1.36.0.html#a-new-hashmapk-v-implementation
* rust-lang/rust#58623
* https://crates.io/crates/hashbrown

Differential Revision: https://phabricator.services.mozilla.com/D71740

UltraBlame original commit: 06dcf8ddbfdefed44cb653c7bf533196ae360da3
  • Loading branch information
marco-c committed Apr 25, 2020
1 parent dd68fdf commit e6a0c5f
Show file tree
Hide file tree
Showing 83 changed files with 16,327 additions and 31 deletions.
54 changes: 50 additions & 4 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions servo/components/style/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ encoding_rs = {version = "0.8", optional = true}
euclid = "0.20"
fallible = { path = "../fallible" }
fxhash = "0.2"
hashbrown = "0.7"
hashglobe = { path = "../hashglobe" }
html5ever = {version = "0.24", optional = true}
indexmap = "1.0"
Expand Down
1 change: 1 addition & 0 deletions third_party/rust/ahash/.cargo-checksum.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"files":{"Cargo.toml":"f0e25e3e6f839a66910d21529e8ba1912fcc86985869aa1e0bc82615bcc9c616","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"ff8f68cb076caf8cefe7a6430d4ac086ce6af2ca8ce2c4e5a2004d4552ef52a2","README.md":"cae69bc8ba7fee044c48b7126a5facb831c29913753f7daec85a057d6d2b33fd","rustfmt.toml":"e090969e99df9360705680cc0097cfaddae10c22dc2e01470592cf3b9787fd36","src/aes_hash.rs":"e6fbcaf7d5a0153b98c7e70f8dd15cb56b1e4b9ae98747c05c12858342065ea6","src/convert.rs":"45c69b65982a95cc78d1b4e54c662be7d852aa03366acf57699e55a62ecb8930","src/fallback_hash.rs":"3d398c24197e7413461edbd79821aba118284dcdd0f1eaa01672fb717e561601","src/folded_multiply.rs":"f3a6ddc1db0655cc1ca775b8370175b3a098ed60e31bf15573879d2ab6870acb","src/hash_map.rs":"36bf0b13e334d7cedbf83e4822438098b227e7c7e381abe5e1eeac1ff6caa209","src/hash_quality_test.rs":"ecb76478989eb3b96e4a299aeccb0d75ba53d13b2c11e5a3c8de15d466a7476a","src/hash_set.rs":"4289672c142e314a0bfc6535b5e8f5e07cc78b60c0c7b308a43fa361eca6ddea","src/lib.rs":"ad3538e0a10bba5fba2f7364f2e0673a62c99b617b7c2fd96232100042a64781","src/random_state.rs":"85749d2b2c915c29c129f609cc22270ab1902a436bfc3997002adecf93c62406","tests/bench.rs":"a206178c8fb2a9756fb4292c44a3a4355143915217018e253930efd1575e99fb","tests/map_tests.rs":"68b81bcef528a83b8b786baad15db8cae13e5ca1db1e595e5aa74bdbf8d8115b","tests/nopanic.rs":"bc54a25d271c690ed49f6eb896e377bfb96217d29eb2c198052771714e972a56"},"package":"0989268a37e128d4d7a8028f1c60099430113fdbc70419010601ce51a228e4fe"}
90 changes: 90 additions & 0 deletions third_party/rust/ahash/Cargo.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies
#
# If you believe there's an error in this file please file an
# issue against the rust-lang/cargo repository. If you're
# editing this file be aware that the upstream Cargo.toml
# will likely look very different (and much more reasonable)

[package]
edition = "2018"
name = "ahash"
version = "0.3.2"
authors = ["Tom Kaitchuck <Tom.Kaitchuck@gmail.com>"]
description = "A non-cryprographic hash function using AES-NI for high performance"
documentation = "https://docs.rs/ahash"
readme = "README.md"
keywords = ["hash", "hashmap", "aes", "aes-ni", "no-std"]
license = "MIT OR Apache-2.0"
repository = "https://github.com/tkaitchuck/ahash"
[package.metadata.docs.rs]
features = ["std"]
rustc-args = ["-C", "target-feature=+aes"]
rustdoc-args = ["-C", "target-feature=+aes"]
[profile.bench]
opt-level = 3
lto = "fat"
codegen-units = 1
debug = false
debug-assertions = false

[profile.release]
opt-level = 3
lto = "fat"
codegen-units = 1
debug = false
debug-assertions = false

[profile.test]
opt-level = 2

[lib]
name = "ahash"
path = "src/lib.rs"
test = true
doctest = true
bench = true
doc = true

[[bench]]
name = "ahash"
path = "tests/bench.rs"
harness = false

[[bench]]
name = "map"
path = "tests/map_tests.rs"
harness = false
[dependencies.const-random]
version = "0.1.6"
optional = true
[dev-dependencies.criterion]
version = "0.3.0"
features = ["real_blackbox"]

[dev-dependencies.fnv]
version = "1.0.5"

[dev-dependencies.fxhash]
version = "0.2.1"

[dev-dependencies.hex]
version = "0.3.2"

[dev-dependencies.no-panic]
version = "0.1.10"

[dev-dependencies.rand]
version = "0.6.5"

[dev-dependencies.seahash]
version = "3.0.5"

[features]
compile-time-rng = ["const-random"]
default = ["compile-time-rng", "std"]
std = []
Loading

0 comments on commit e6a0c5f

Please sign in to comment.