Crate inertia_core
source ·Re-exports
Modules
Macros
Macros for implementing
Assign
for in-place assignment.Macros for overloading binary operators.
Macros for overloading comparison operators
Macros for implementing
From
for conversions.Macros for implementing
TryFrom
for conversions.Macros for overloading unary operators.
Structs
YeetExperimental
Implement
FromResidual<Yeet<T>>
on your type to enable
do yeet expr
syntax in functions returning your type.A (half-open) range bounded inclusively below and exclusively above
(
start..end
).A range only bounded inclusively below (
start..
).An unbounded range (
..
).A range bounded inclusively below and above (
start..=end
).A range only bounded exclusively above (
..end
).A range only bounded inclusively above (
..=end
).Enums
GeneratorStateExperimental
The result of a generator resumption.
An endpoint of a range of keys.
Used to tell an operation whether it should exit early or go on as usual.
Traits
Assign to self. Not meant for expensive conversion.
CoerceUnsizedExperimental
Trait that indicates that this is a pointer or a wrapper for one,
where unsizing can be performed on the pointee.
DispatchFromDynExperimental
DispatchFromDyn
is used in the implementation of object safety checks (specifically allowing
arbitrary self types), to guarantee that a method’s receiver type can be dispatched on.FromResidualExperimental
Used to specify which residuals can be converted into which
crate::ops::Try
types.GeneratorExperimental
The trait implemented by builtin generator types.
Inverse as a unary operation.
Inverse with assignment.
OneSidedRangeExperimental
OneSidedRange
is implemented for built-in range types that are unbounded
on one side. For example, a..
, ..b
and ..=c
implement OneSidedRange
,
but ..
, d..e
, and f..=g
do not.ResidualExperimental
Allows retrieving the canonical type implementing
Try
that has this type
as its residual and allows it to hold an O
as its output.TryExperimental
The
?
operator and try {}
blocks.The addition operator
+
.The addition assignment operator
+=
.Addition with assignment to the rhs operand.
Addition with assignment into a separate argument.
Bitwise
and
with assignment into a separate argument.Bitwise
or
with assignment into a separate argument.Bitwise
xor
with assignment into a separate argument.Division with assignment into a separate argument.
Evaluation of an expression with assignment into a separate argument.
Modular evaluation of an expression with assignment into a separate argument.
Inverse with assignment into a separate argument.
Multiplication with assignment into a separate argument.
Negation with assignment into a separate argument.
Complement with assignment into a separate argument.
Exponentiation with assignment into a separate argument.
Remainder with assignment into a separate argument.
Subtraction with assignment into a separate argument.
The bitwise AND operator
&
.The bitwise AND assignment operator
&=
.Bitwise
and
with assignment to the rhs operand.The bitwise OR operator
|
.The bitwise OR assignment operator
|=
.Bitwise
or
with assignment to the rhs operand.The bitwise XOR operator
^
.The bitwise XOR assignment operator
^=
.Bitwise
xor
with assignment to the rhs operand.Used for immutable dereferencing operations, like
*v
.Used for mutable dereferencing operations, like in
*v = 1;
.The division operator
/
.The division assignment operator
/=
.Division with assignment to the rhs operand.
Custom code within the destructor.
Evaluation of an expression.
Modular evaluation of an expression.
The version of the call operator that takes an immutable receiver.
The version of the call operator that takes a mutable receiver.
The version of the call operator that takes a by-value receiver.
Used for indexing operations (
container[index]
) in immutable contexts.Used for indexing operations (
container[index]
) in mutable contexts.The multiplication operator
*
.The multiplication assignment operator
*=
.Multiplication with assignment to the rhs operand.
The unary negation operator
-
.Negation with assignment.
The unary logical negation operator
!
.Complement with assignment.
Exponentiation.
Exponentiation with assignment.
Exponentiation with assignment to the rhs operand.
RangeBounds
is implemented by Rust’s built-in range types, produced
by range syntax like ..
, a..
, ..b
, ..=c
, d..e
, or f..=g
.The remainder operator
%
.The remainder assignment operator
%=
.Remainder with assignment to the rhs operand.
The left shift operator
<<
. Note that because this trait is implemented
for all integer types with multiple right-hand-side types, Rust’s type
checker has special handling for _ << _
, setting the result type for
integer operations to the type of the left-hand-side operand. This means
that though a << b
and a.shl(b)
are one and the same from an evaluation
standpoint, they are different when it comes to type inference.The left shift assignment operator
<<=
.The right shift operator
>>
. Note that because this trait is implemented
for all integer types with multiple right-hand-side types, Rust’s type
checker has special handling for _ >> _
, setting the result type for
integer operations to the type of the left-hand-side operand. This means
that though a >> b
and a.shr(b)
are one and the same from an evaluation
standpoint, they are different when it comes to type inference.The right shift assignment operator
>>=
.The subtraction operator
-
.The subtraction assignment operator
-=
.Subtraction with assignment to the rhs operand.