1#![cfg_attr(not(feature = "std"), no_std)]
2#![cfg_attr(all(not(feature = "std"), feature = "unstable"),
3 feature(core_intrinsics, core_panic, raw, unicode_internals))]
4#![cfg_attr(all(not(feature = "std"), feature = "alloc", feature = "unstable"),
5 feature(raw_vec_internals, wake_trait, asm, concat_idents, format_args_nl, global_asm,
6 llvm_asm, log_syntax, trace_macros))]
7#[cfg(feature = "alloc")]
8extern crate alloc as alloc_;
9
10#[cfg(feature = "std")]
11pub use std::*;
12
13#[cfg(all(feature = "alloc", not(feature = "std")))]
14mod alloc_stuff {
15 pub use super::alloc_::alloc;
16 pub use super::alloc_::borrow;
17 pub use super::alloc_::boxed;
18 pub use super::alloc_::collections;
19 pub use super::alloc_::fmt;
20 pub use super::alloc_::rc;
21 pub use super::alloc_::slice;
22 pub use super::alloc_::str;
23 pub use super::alloc_::string;
24 pub use super::alloc_::vec;
25
26 pub use core::any;
27 pub use core::arch;
28 pub use core::array;
29 pub use core::ascii;
30 pub use core::cell;
31 pub use core::char;
32 pub use core::clone;
33 pub use core::cmp;
34 pub use core::convert;
35 pub use core::default;
36 pub use core::f32;
37 pub use core::f64;
38 pub use core::ffi;
39 pub use core::future;
40 pub use core::hash;
41 pub use core::hint;
42 pub use core::i8;
43 pub use core::i16;
44 pub use core::i32;
45 pub use core::i64;
46 pub use core::i128;
47 pub use core::isize;
48 pub use core::iter;
49 pub use core::marker;
50 pub use core::mem;
51 pub use core::num;
52 pub use core::ops;
53 pub use core::option;
54 pub use core::panic;
55 pub use core::pin;
56 pub use core::primitive;
57 pub use core::ptr;
58 pub use core::result;
59 pub use core::time;
60 pub use core::u8;
61 pub use core::u16;
62 pub use core::u32;
63 pub use core::u64;
64 pub use core::u128;
65 pub use core::usize;
66
67 pub mod prelude {
68 pub mod v1 {
69 pub use super::super::super::alloc_::borrow::ToOwned;
70 pub use super::super::super::alloc_::boxed::Box;
71 pub use super::super::super::alloc_::string::String;
72 pub use super::super::super::alloc_::string::ToString;
73 pub use super::super::super::alloc_::vec::Vec;
74
75 pub use super::super::super::alloc_::format;
76 pub use super::super::super::alloc_::vec;
77
78 pub use core::prelude::v1::*;
79 }
80 }
81
82 pub mod task {
83 pub use core::task::*;
84
85 #[cfg(feature = "unstable")]
86 pub use super::super::alloc_::task::*;
87 }
88
89 pub mod sync {
90 pub use core::sync::*;
91 pub use alloc_::sync::*;
92 }
93
94 pub use core::assert;
95 pub use core::assert_eq;
96 pub use core::assert_ne;
97 pub use core::cfg;
98 pub use core::column;
99 pub use core::compile_error;
100 pub use core::concat;
101 pub use core::debug_assert;
102 pub use core::debug_assert_eq;
103 pub use core::debug_assert_ne;
104 pub use core::env;
105 pub use core::file;
106 pub use core::format_args;
107 pub use core::include;
108 pub use core::include_bytes;
109 pub use core::include_str;
110 pub use core::line;
111 pub use core::matches;
112 pub use core::module_path;
113 pub use core::option_env;
114 pub use core::stringify;
115 pub use core::todo;
116 #[allow(deprecated)]
117 pub use core::r#try;
118 pub use core::unimplemented;
119 pub use core::unreachable;
120 pub use core::write;
121 pub use core::writeln;
122
123 #[cfg(feature = "unstable")]
124 pub use core::asm;
125 #[cfg(feature = "unstable")]
126 pub use core::concat_idents;
127 #[cfg(feature = "unstable")]
128 pub use core::format_args_nl;
129 #[cfg(feature = "unstable")]
130 pub use core::global_asm;
131 #[cfg(feature = "unstable")]
132 pub use core::llvm_asm;
133 #[cfg(feature = "unstable")]
134 pub use core::log_syntax;
135 #[cfg(feature = "unstable")]
136 pub use core::trace_macros;
137}
138#[cfg(all(feature = "alloc", not(feature = "std")))]
139pub use alloc_stuff::*;
140
141#[cfg(all(not(feature = "alloc"), not(feature = "std")))]
142pub use core::*;