1//! The core prelude
2//!
3//! This module is intended for users of core which do not link to std as well.
4//! This module is imported by default when `#![no_std]` is used in the same
5//! manner as the standard library's prelude.
6
7// No formatting: this file is nothing but re-exports, and their order is worth preserving.
8#![cfg_attr(rustfmt, rustfmt::skip)]
9
10#![stable(feature = "core_prelude", since = "1.4.0")]
11
12pub mod v1;
13
14/// The 2015 version of the core prelude.
15///
16/// See the [module-level documentation](self) for more.
17#[stable(feature = "prelude_2015", since = "1.55.0")]
18pub mod rust_2015 {
19 #[stable(feature = "prelude_2015", since = "1.55.0")]
20 #[doc(no_inline)]
21 pub use super::v1::*;
22}
23
24/// The 2018 version of the core prelude.
25///
26/// See the [module-level documentation](self) for more.
27#[stable(feature = "prelude_2018", since = "1.55.0")]
28pub mod rust_2018 {
29 #[stable(feature = "prelude_2018", since = "1.55.0")]
30 #[doc(no_inline)]
31 pub use super::v1::*;
32}
33
34/// The 2021 version of the core prelude.
35///
36/// See the [module-level documentation](self) for more.
37#[stable(feature = "prelude_2021", since = "1.55.0")]
38pub mod rust_2021 {
39 #[stable(feature = "prelude_2021", since = "1.55.0")]
40 #[doc(no_inline)]
41 pub use super::v1::*;
42
43 #[stable(feature = "prelude_2021", since = "1.55.0")]
44 #[doc(no_inline)]
45 pub use crate::iter::FromIterator;
46
47 #[stable(feature = "prelude_2021", since = "1.55.0")]
48 #[doc(no_inline)]
49 pub use crate::convert::{TryFrom, TryInto};
50}
51
52/// The 2024 version of the core prelude.
53///
54/// See the [module-level documentation](self) for more.
55#[stable(feature = "prelude_2024", since = "1.85.0")]
56pub mod rust_2024 {
57 #[stable(feature = "rust1", since = "1.0.0")]
58 #[doc(no_inline)]
59 pub use super::v1::*;
60
61 #[stable(feature = "prelude_2021", since = "1.55.0")]
62 #[doc(no_inline)]
63 pub use crate::iter::FromIterator;
64
65 #[stable(feature = "prelude_2021", since = "1.55.0")]
66 #[doc(no_inline)]
67 pub use crate::convert::{TryFrom, TryInto};
68
69 #[stable(feature = "prelude_2024", since = "1.85.0")]
70 #[doc(no_inline)]
71 pub use crate::future::{Future, IntoFuture};
72}
73
74/// The Future version of the core prelude.
75///
76/// See the [module-level documentation](self) for more.
77#[doc(hidden)]
78#[unstable(feature = "prelude_future", issue = "none")]
79pub mod rust_future {
80 #[stable(feature = "rust1", since = "1.0.0")]
81 #[doc(no_inline)]
82 pub use super::v1::*;
83
84 #[stable(feature = "prelude_2021", since = "1.55.0")]
85 #[doc(no_inline)]
86 pub use crate::iter::FromIterator;
87
88 #[stable(feature = "prelude_2021", since = "1.55.0")]
89 #[doc(no_inline)]
90 pub use crate::convert::{TryFrom, TryInto};
91
92 #[stable(feature = "prelude_2024", since = "1.85.0")]
93 #[doc(no_inline)]
94 pub use crate::future::{Future, IntoFuture};
95}
96