blueprint_starlark_map/
lib.rs

1/*
2 * Copyright 2019 The Starlark in Rust Authors.
3 * Copyright (c) Facebook, Inc. and its affiliates.
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 *     https://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17
18//! Ordered map optimized for starlark-rust use cases.
19
20// Hints we disagree with
21#![allow(clippy::missing_safety_doc)]
22#![deny(missing_docs)]
23#![deny(rustdoc::broken_intra_doc_links)]
24#![cfg_attr(rust_nightly, feature(core_intrinsics))]
25#![cfg_attr(rust_nightly, feature(portable_simd))]
26#![cfg_attr(rust_nightly, feature(cfg_version))]
27#![cfg_attr(rust_nightly, allow(internal_features))]
28
29mod hash_value;
30mod hashed;
31mod hasher;
32mod iter;
33mod mix_u32;
34pub mod ordered_map;
35pub mod ordered_set;
36pub mod small_map;
37pub mod small_set;
38pub mod sorted_map;
39pub mod sorted_set;
40pub mod sorted_vec;
41pub(crate) mod sorting;
42pub mod unordered_map;
43pub mod unordered_set;
44pub mod vec2;
45pub(crate) mod vec_map;
46
47pub use equivalent::Equivalent;
48pub use hash_value::StarlarkHashValue;
49pub use hashed::Hashed;
50pub use hasher::StarlarkHasher;
51pub use hasher::StarlarkHasherBuilder;