2015-05-08 22:15:03 +00:00
|
|
|
//! The first version of the prelude of The Rust Standard Library.
|
2015-11-11 20:22:23 +00:00
|
|
|
//!
|
2021-02-25 11:41:39 +00:00
|
|
|
//! See the [module-level documentation](super) for more.
|
2014-12-22 17:04:23 +00:00
|
|
|
|
2015-01-24 05:48:20 +00:00
|
|
|
#![stable(feature = "rust1", since = "1.0.0")]
|
2014-12-22 17:04:23 +00:00
|
|
|
|
2018-01-12 21:41:25 +00:00
|
|
|
// Re-exported core operators
|
2019-06-20 08:52:31 +00:00
|
|
|
#[stable(feature = "rust1", since = "1.0.0")]
|
|
|
|
#[doc(no_inline)]
|
|
|
|
pub use crate::marker::{Send, Sized, Sync, Unpin};
|
2015-01-24 05:48:20 +00:00
|
|
|
#[stable(feature = "rust1", since = "1.0.0")]
|
2018-07-07 21:16:27 +00:00
|
|
|
#[doc(no_inline)]
|
2019-02-10 19:23:21 +00:00
|
|
|
pub use crate::ops::{Drop, Fn, FnMut, FnOnce};
|
2015-01-06 23:57:50 +00:00
|
|
|
|
2018-01-12 21:41:25 +00:00
|
|
|
// Re-exported functions
|
2015-01-24 05:48:20 +00:00
|
|
|
#[stable(feature = "rust1", since = "1.0.0")]
|
2018-07-07 21:16:27 +00:00
|
|
|
#[doc(no_inline)]
|
2019-02-10 19:23:21 +00:00
|
|
|
pub use crate::mem::drop;
|
2014-12-22 17:04:23 +00:00
|
|
|
|
2018-01-12 21:41:25 +00:00
|
|
|
// Re-exported types and traits
|
2015-04-17 21:31:30 +00:00
|
|
|
#[stable(feature = "rust1", since = "1.0.0")]
|
2018-07-07 21:16:27 +00:00
|
|
|
#[doc(no_inline)]
|
2019-11-27 18:29:00 +00:00
|
|
|
pub use crate::convert::{AsMut, AsRef, From, Into};
|
2015-04-17 21:31:30 +00:00
|
|
|
#[stable(feature = "rust1", since = "1.0.0")]
|
2018-07-07 21:16:27 +00:00
|
|
|
#[doc(no_inline)]
|
2019-11-27 18:29:00 +00:00
|
|
|
pub use crate::iter::{DoubleEndedIterator, ExactSizeIterator};
|
2015-01-24 05:48:20 +00:00
|
|
|
#[stable(feature = "rust1", since = "1.0.0")]
|
2018-07-07 21:16:27 +00:00
|
|
|
#[doc(no_inline)]
|
2019-11-27 18:29:00 +00:00
|
|
|
pub use crate::iter::{Extend, IntoIterator, Iterator};
|
2015-01-24 05:48:20 +00:00
|
|
|
#[stable(feature = "rust1", since = "1.0.0")]
|
2018-07-07 21:16:27 +00:00
|
|
|
#[doc(no_inline)]
|
2019-11-27 18:29:00 +00:00
|
|
|
pub use crate::option::Option::{self, None, Some};
|
2015-01-24 05:48:20 +00:00
|
|
|
#[stable(feature = "rust1", since = "1.0.0")]
|
2018-07-07 21:16:27 +00:00
|
|
|
#[doc(no_inline)]
|
2019-11-27 18:29:00 +00:00
|
|
|
pub use crate::result::Result::{self, Err, Ok};
|
2018-07-07 21:16:27 +00:00
|
|
|
|
2019-06-20 08:52:31 +00:00
|
|
|
// Re-exported built-in macros
|
|
|
|
#[stable(feature = "builtin_macro_prelude", since = "1.38.0")]
|
2020-04-10 16:34:30 +00:00
|
|
|
#[allow(deprecated)]
|
2019-06-20 08:52:31 +00:00
|
|
|
#[doc(no_inline)]
|
|
|
|
pub use core::prelude::v1::{
|
2021-07-17 18:48:00 +00:00
|
|
|
assert, cfg, column, compile_error, concat, concat_idents, env, file, format_args,
|
2022-01-12 00:00:00 +00:00
|
|
|
format_args_nl, include, include_bytes, include_str, line, log_syntax, module_path, option_env,
|
|
|
|
stringify, trace_macros, Clone, Copy, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd,
|
2019-06-20 08:52:31 +00:00
|
|
|
};
|
|
|
|
|
2021-07-29 17:00:55 +00:00
|
|
|
#[unstable(
|
|
|
|
feature = "concat_bytes",
|
|
|
|
issue = "87555",
|
|
|
|
reason = "`concat_bytes` is not stable enough for use and is subject to change"
|
|
|
|
)]
|
|
|
|
#[doc(no_inline)]
|
|
|
|
pub use core::prelude::v1::concat_bytes;
|
|
|
|
|
2021-12-31 12:32:03 +00:00
|
|
|
// Do not `doc(inline)` these `doc(hidden)` items.
|
2019-06-20 08:52:31 +00:00
|
|
|
#[stable(feature = "builtin_macro_prelude", since = "1.38.0")]
|
2021-12-31 12:32:03 +00:00
|
|
|
#[allow(deprecated)]
|
|
|
|
pub use core::prelude::v1::{RustcDecodable, RustcEncodable};
|
2018-07-07 21:16:27 +00:00
|
|
|
|
2021-12-31 12:32:03 +00:00
|
|
|
// Do not `doc(no_inline)` so that they become doc items on their own
|
|
|
|
// (no public module for them to be re-exported from).
|
2022-10-14 01:24:58 +00:00
|
|
|
#[cfg(not(bootstrap))]
|
|
|
|
#[stable(feature = "builtin_macro_prelude", since = "1.38.0")]
|
|
|
|
pub use core::prelude::v1::alloc_error_handler;
|
2020-11-14 11:47:14 +00:00
|
|
|
#[stable(feature = "builtin_macro_prelude", since = "1.38.0")]
|
2021-12-31 12:32:03 +00:00
|
|
|
pub use core::prelude::v1::{bench, derive, global_allocator, test, test_case};
|
2020-11-14 11:47:14 +00:00
|
|
|
|
2022-09-20 11:55:07 +00:00
|
|
|
#[unstable(feature = "derive_const", issue = "none")]
|
|
|
|
#[cfg(not(bootstrap))]
|
|
|
|
pub use core::prelude::v1::derive_const;
|
|
|
|
|
2021-12-31 12:32:03 +00:00
|
|
|
// Do not `doc(no_inline)` either.
|
2020-03-09 21:56:20 +00:00
|
|
|
#[unstable(
|
|
|
|
feature = "cfg_accessible",
|
|
|
|
issue = "64797",
|
|
|
|
reason = "`cfg_accessible` is not fully implemented"
|
|
|
|
)]
|
|
|
|
pub use core::prelude::v1::cfg_accessible;
|
|
|
|
|
2021-12-31 12:32:03 +00:00
|
|
|
// Do not `doc(no_inline)` either.
|
2021-03-06 18:33:02 +00:00
|
|
|
#[unstable(
|
|
|
|
feature = "cfg_eval",
|
|
|
|
issue = "82679",
|
|
|
|
reason = "`cfg_eval` is a recently implemented feature"
|
|
|
|
)]
|
|
|
|
pub use core::prelude::v1::cfg_eval;
|
|
|
|
|
2018-07-07 21:16:27 +00:00
|
|
|
// The file so far is equivalent to src/libcore/prelude/v1.rs,
|
|
|
|
// and below to src/liballoc/prelude.rs.
|
|
|
|
// Those files are duplicated rather than using glob imports
|
|
|
|
// because we want docs to show these re-exports as pointing to within `std`.
|
|
|
|
|
2015-01-24 05:48:20 +00:00
|
|
|
#[stable(feature = "rust1", since = "1.0.0")]
|
2018-07-07 21:16:27 +00:00
|
|
|
#[doc(no_inline)]
|
2019-11-27 18:29:00 +00:00
|
|
|
pub use crate::borrow::ToOwned;
|
2015-01-24 05:48:20 +00:00
|
|
|
#[stable(feature = "rust1", since = "1.0.0")]
|
2018-07-07 21:16:27 +00:00
|
|
|
#[doc(no_inline)]
|
2019-11-27 18:29:00 +00:00
|
|
|
pub use crate::boxed::Box;
|
2015-03-11 04:13:29 +00:00
|
|
|
#[stable(feature = "rust1", since = "1.0.0")]
|
2018-07-07 21:16:27 +00:00
|
|
|
#[doc(no_inline)]
|
2019-02-10 19:23:21 +00:00
|
|
|
pub use crate::string::{String, ToString};
|
2015-01-24 05:48:20 +00:00
|
|
|
#[stable(feature = "rust1", since = "1.0.0")]
|
2018-07-07 21:16:27 +00:00
|
|
|
#[doc(no_inline)]
|
2019-02-10 19:23:21 +00:00
|
|
|
pub use crate::vec::Vec;
|