@@ -80,15 +80,10 @@ r[names.preludes.extern.no_std]
8080### The `no_std ` attribute
8181
8282r [names . preludes. extern . no_std. intro]
83- By default , the standard library is automatically included in the crate root
84- module . The [`std `] crate is added to the root , along with an implicit
85- [`macro_use ` attribute ] pulling in all macros exported from `std ` into the
86- [`macro_use ` prelude ]. Both [`core `] and [`std `] are added to the [extern
87- prelude ].
83+ By default , the standard library is automatically included in the crate root module . The [`std `] crate is added to the root , along with an implicit [`macro_use ` attribute ] pulling in all macros exported from `std ` into the [`macro_use ` prelude ]. Both [`core `] and [`std `] are added to the [extern prelude ].
8884
8985r [names . preludes. extern . no_std. allowed- positions ]
90- The * `no_std ` [attribute ]* may be applied at the crate level to prevent the
91- [`std `] crate from being automatically added into scope .
86+ The * `no_std ` [attribute ]* may be applied at the crate level to prevent the [`std `] crate from being automatically added into scope .
9287
9388It does three things :
9489
@@ -97,8 +92,7 @@ r[names.preludes.extern.no_std.extern]
9792r [names . preludes. extern . no_std. module]
9893* Affects which module is used to make up the [standard library prelude ] (as described above ).
9994r [names . preludes. extern . no_std. core]
100- * Injects the [`core `] crate into the crate root instead of [`std `], and pulls
101- in all macros exported from `core ` in the [`macro_use ` prelude ].
95+ * Injects the [`core `] crate into the crate root instead of [`std `], and pulls in all macros exported from `core ` in the [`macro_use ` prelude ].
10296
10397> [! NOTE ]
10498> Using the core prelude over the standard prelude is useful when either the crate is targeting a platform that does not support the standard library or is purposefully not using the capabilities of the standard library . Those capabilities are mainly dynamic memory allocation (e . g. `Box ` and `Vec `) and file and network capabilities (e . g. `std :: fs ` and `std :: io `).
0 commit comments