Skip to main content

ObeysDeepEq

Trait ObeysDeepEq 

Source
pub trait ObeysDeepEq:
    Sized
    + PartialEq
    + DeepView {
    // Required method
    proof fn lemma_obeys_deep_eq();
}
Expand description

Types whose Rust equality (==) decides deep-view equality.

Required Methods§

Source

proof fn lemma_obeys_deep_eq()

ensures
crate::laws_eq::obeys_deep_eq::<Self>(),

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl ObeysDeepEq for String

Source§

impl ObeysDeepEq for bool

Source§

impl ObeysDeepEq for char

Source§

impl ObeysDeepEq for i8

Source§

impl ObeysDeepEq for i16

Source§

impl ObeysDeepEq for i32

Source§

impl ObeysDeepEq for i64

Source§

impl ObeysDeepEq for i128

Source§

impl ObeysDeepEq for isize

Source§

impl ObeysDeepEq for u8

Source§

impl ObeysDeepEq for u16

Source§

impl ObeysDeepEq for u32

Source§

impl ObeysDeepEq for u64

Source§

impl ObeysDeepEq for u128

Source§

impl ObeysDeepEq for usize

Source§

impl<'a, T: ObeysDeepEq> ObeysDeepEq for &'a T

Source§

impl<'a, T: ObeysDeepEq> ObeysDeepEq for &'a [T]

Source§

impl<'a> ObeysDeepEq for &'a str

Source§

impl<K: ObeysDeepEq + Hash + Eq, V: ObeysDeepEq> ObeysDeepEq for HashMap<K, V>

Source§

impl<K: ObeysDeepEq + Hash + Eq> ObeysDeepEq for HashSet<K>

Source§

impl<T0: ObeysDeepEq, T1: ObeysDeepEq, T2: ObeysDeepEq, T3: ObeysDeepEq> ObeysDeepEq for (T0, T1, T2, T3)

Source§

impl<T0: ObeysDeepEq, T1: ObeysDeepEq, T2: ObeysDeepEq> ObeysDeepEq for (T0, T1, T2)

Source§

impl<T0: ObeysDeepEq, T1: ObeysDeepEq> ObeysDeepEq for (T0, T1)

Source§

impl<T0: ObeysDeepEq> ObeysDeepEq for (T0,)

Source§

impl<T: ObeysDeepEq, E: ObeysDeepEq> ObeysDeepEq for Result<T, E>

Source§

impl<T: ObeysDeepEq> ObeysDeepEq for Option<T>

Source§

impl<T: ObeysDeepEq> ObeysDeepEq for Vec<T>

Implementors§