solar_data_structures/
lib.rs1#![doc = include_str!("../README.md")]
2#![doc(
3 html_logo_url = "https://raw.githubusercontent.com/paradigmxyz/solar/main/assets/logo.png",
4 html_favicon_url = "https://raw.githubusercontent.com/paradigmxyz/solar/main/assets/favicon.ico"
5)]
6#![cfg_attr(docsrs, feature(doc_cfg, doc_auto_cfg))]
7#![cfg_attr(feature = "nightly", feature(core_intrinsics))]
8#![cfg_attr(feature = "nightly", feature(never_type))]
9#![cfg_attr(feature = "nightly", feature(debug_closure_helpers))]
10#![cfg_attr(feature = "nightly", feature(rustc_attrs))]
11#![cfg_attr(feature = "nightly", feature(likely_unlikely))]
12#![cfg_attr(feature = "nightly", allow(internal_features))]
13
14pub mod cycle;
15pub mod fmt;
16pub mod hint;
17pub mod index;
18pub mod map;
19pub mod sync;
20pub mod trustme;
21
22mod bump_ext;
23pub use bump_ext::BumpExt;
24
25mod collect;
26pub use collect::CollectAndApply;
27
28mod never;
29pub use never::Never;
30
31mod on_drop;
32pub use on_drop::{OnDrop, defer};
33
34mod interned;
35pub use interned::Interned;
36
37pub use smallvec;
38
39#[inline(never)]
41#[cold]
42pub fn outline<R>(f: impl FnOnce() -> R) -> R {
43 f()
44}