3 //! This module is intended for users of libcore which do not link to libstd as
4 //! well. This module is imported by default when `#![no_std]` is used in the
5 //! same manner as the standard library's prelude.
7 #![stable(feature = "core_prelude", since = "1.4.0")]
9 // Re-exported core operators
10 #[stable(feature = "core_prelude", since = "1.4.0")]
12 pub use crate::marker::{Copy, Send, Sized, Sync, Unpin};
13 #[stable(feature = "core_prelude", since = "1.4.0")]
15 pub use crate::ops::{Drop, Fn, FnMut, FnOnce};
17 // Re-exported functions
18 #[stable(feature = "core_prelude", since = "1.4.0")]
20 pub use crate::mem::drop;
22 // Re-exported types and traits
23 #[stable(feature = "core_prelude", since = "1.4.0")]
25 pub use crate::clone::Clone;
26 #[stable(feature = "core_prelude", since = "1.4.0")]
28 pub use crate::cmp::{PartialEq, PartialOrd, Eq, Ord};
29 #[stable(feature = "core_prelude", since = "1.4.0")]
31 pub use crate::convert::{AsRef, AsMut, Into, From};
32 #[stable(feature = "core_prelude", since = "1.4.0")]
34 pub use crate::default::Default;
35 #[stable(feature = "core_prelude", since = "1.4.0")]
37 pub use crate::iter::{Iterator, Extend, IntoIterator};
38 #[stable(feature = "core_prelude", since = "1.4.0")]
40 pub use crate::iter::{DoubleEndedIterator, ExactSizeIterator};
41 #[stable(feature = "core_prelude", since = "1.4.0")]
43 pub use crate::option::Option::{self, Some, None};
44 #[stable(feature = "core_prelude", since = "1.4.0")]
46 pub use crate::result::Result::{self, Ok, Err};
48 // Re-exported built-in macros
49 #[stable(feature = "builtin_macro_prelude", since = "1.38.0")]
51 pub use crate::fmt::macros::Debug;
52 #[stable(feature = "builtin_macro_prelude", since = "1.38.0")]
54 pub use crate::hash::macros::Hash;
56 #[stable(feature = "builtin_macro_prelude", since = "1.38.0")]
82 #[stable(feature = "builtin_macro_prelude", since = "1.38.0")]
85 pub use crate::macros::builtin::{