pub trait Binder {
type Var: Binder<Var = Self::Var>;
type Wrap<X: Binder>: Binder<Var = X::Var>;
// Required methods
fn get_var(self) -> Self::Var;
fn get_var_ref(&self) -> &Self::Var;
fn get_var_mut(&mut self) -> &mut Self::Var;
fn inside<X: Binder<Var = X>>(
self,
f: &mut impl FnMut(Self::Var) -> X,
) -> Self::Wrap<X>;
}
Required Associated Types§
Required Methods§
fn get_var(self) -> Self::Var
fn get_var_ref(&self) -> &Self::Var
fn get_var_mut(&mut self) -> &mut Self::Var
fn inside<X: Binder<Var = X>>( self, f: &mut impl FnMut(Self::Var) -> X, ) -> Self::Wrap<X>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.