#[non_exhaustive]pub enum PhysicsViolation {
NegativeEnergy,
NonPositiveTime,
NegativeSpace,
MargolusLevitinViolated {
actual_s: f64,
minimum_s: f64,
},
}Expand description
A physical-law violation detected in a ResourceTriple.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
NegativeEnergy
Energy is negative — violates conservation of energy.
NonPositiveTime
Time is non-positive — violates causality.
NegativeSpace
Space is negative — physically impossible.
MargolusLevitinViolated
Margolus–Levitin theorem violated: T < π·ℏ / (2·E).
Trait Implementations§
Source§impl Clone for PhysicsViolation
impl Clone for PhysicsViolation
Source§fn clone(&self) -> PhysicsViolation
fn clone(&self) -> PhysicsViolation
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for PhysicsViolation
impl Debug for PhysicsViolation
Source§impl Display for PhysicsViolation
impl Display for PhysicsViolation
Source§impl Error for PhysicsViolation
impl Error for PhysicsViolation
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0:
use the Display impl or to_string()
Auto Trait Implementations§
impl Freeze for PhysicsViolation
impl RefUnwindSafe for PhysicsViolation
impl Send for PhysicsViolation
impl Sync for PhysicsViolation
impl Unpin for PhysicsViolation
impl UnsafeUnpin for PhysicsViolation
impl UnwindSafe for PhysicsViolation
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more