Expand description
The 2021 version of the core prelude.
See the module-level documentation for more.
Macros§
- assert
- Asserts that a boolean expression is
true
at runtime. - cfg
- Evaluates boolean combinations of configuration flags at compile-time.
- column
- Expands to the column number at which it was invoked.
- compile_
error - Causes compilation to fail with the given error message when encountered.
- concat
- Concatenates literals into a static string slice.
- env
- Inspects an environment variable at compile time.
- file
- Expands to the file name in which it was invoked.
- format_
args - Constructs parameters for the other string-formatting macros.
- include
- Parses a file as an expression or an item according to the context.
- include_
bytes - Includes a file as a reference to a byte array.
- include_
str - Includes a UTF-8 encoded file as a string.
- line
- Expands to the line number on which it was invoked.
- module_
path - Expands to a string that represents the current module path.
- option_
env - Optionally inspects an environment variable at compile time.
- stringify
- Stringifies its arguments.
- concat_
bytes Experimental - Concatenates literals into a byte slice.
- concat_
idents Experimental - Concatenates identifiers into one identifier.
- deref
Experimental - Unstable placeholder for deref patterns.
- format_
args_ nl Experimental - Same as
format_args
, but adds a newline in the end. - log_
syntax Experimental - Prints passed tokens into the standard output.
- trace_
macros Experimental - Enables or disables tracing functionality used for debugging other macros.
- type_
ascribe Experimental - Unstable placeholder for type ascription.
Enums§
- Option
- The
Option
type. See the module level documentation for more. - Result
Result
is a type that represents either success (Ok
) or failure (Err
).
Traits§
- AsMut
- Used to do a cheap mutable-to-mutable reference conversion.
- AsRef
- Used to do a cheap reference-to-reference conversion.
- Clone
- A common trait for the ability to explicitly duplicate an object.
- Copy
- Types whose values can be duplicated simply by copying bits.
- Default
- A trait for giving a type a useful default value.
- Double
Ended Iterator - An iterator able to yield elements from both ends.
- Drop
- Custom code within the destructor.
- Eq
- Trait for comparisons corresponding to equivalence relations.
- Exact
Size Iterator - An iterator that knows its exact length.
- Extend
- Extend a collection with the contents of an iterator.
- Fn
- The version of the call operator that takes an immutable receiver.
- FnMut
- The version of the call operator that takes a mutable receiver.
- FnOnce
- The version of the call operator that takes a by-value receiver.
- From
- Used to do value-to-value conversions while consuming the input value. It is the reciprocal of
Into
. - From
Iterator - Conversion from an
Iterator
. - Into
- A value-to-value conversion that consumes the input value. The
opposite of
From
. - Into
Iterator - Conversion into an
Iterator
. - Iterator
- A trait for dealing with iterators.
- Ord
- Trait for types that form a total order.
- Partial
Eq - Trait for comparisons using the equality operator.
- Partial
Ord - Trait for types that form a partial order.
- Send
- Types that can be transferred across thread boundaries.
- Sized
- Types with a constant size known at compile time.
- Sync
- Types for which it is safe to share references between threads.
- TryFrom
- Simple and safe type conversions that may fail in a controlled
way under some circumstances. It is the reciprocal of
TryInto
. - TryInto
- An attempted conversion that consumes
self
, which may or may not be expensive. - Unpin
- Types that do not require any pinning guarantees.
Functions§
- align_
of - Returns the ABI-required minimum alignment of a type in bytes.
- align_
of_ val - Returns the ABI-required minimum alignment of the type of the value that
val
points to in bytes. - drop
- Disposes of a value.
- size_of
- Returns the size of a type in bytes.
- size_
of_ val - Returns the size of the pointed-to value in bytes.
Attribute Macros§
- derive
- Attribute macro used to apply derive macros.
- global_
allocator - Attribute macro applied to a static to register it as a global allocator.
- test
- Attribute macro applied to a function to turn it into a unit test.
- alloc_
error_ handler Experimental - Attribute macro applied to a function to register it as a handler for allocation failure.
- bench
Experimental - Attribute macro applied to a function to turn it into a benchmark test.
- cfg_
accessible Experimental - Keeps the item it’s applied to if the passed path is accessible, and removes it otherwise.
- cfg_
eval Experimental - Expands all
#[cfg]
and#[cfg_attr]
attributes in the code fragment it’s applied to. - derive_
const Experimental - Attribute macro used to apply derive macros for implementing traits in a const context.
- test_
case Experimental - An implementation detail of the
#[test]
and#[bench]
macros.
Derive Macros§
- Clone
- Derive macro generating an impl of the trait
Clone
. - Copy
- Derive macro generating an impl of the trait
Copy
. - Debug
- Derive macro generating an impl of the trait
Debug
. - Default
- Derive macro generating an impl of the trait
Default
. - Eq
- Derive macro generating an impl of the trait
Eq
. - Hash
- Derive macro generating an impl of the trait
Hash
. - Ord
- Derive macro generating an impl of the trait
Ord
. The behavior of this macro is described in detail here. - Partial
Eq - Derive macro generating an impl of the trait
PartialEq
. The behavior of this macro is described in detail here. - Partial
Ord - Derive macro generating an impl of the trait
PartialOrd
. The behavior of this macro is described in detail here.