pub trait Run: Sized {
// Required methods
fn run<T>(&self, closure: impl FnOnce(&Self) -> T) -> T;
fn run_mut<T>(&mut self, closure: impl FnOnce(&mut Self) -> T) -> T;
fn try_run<T, E>(
&self,
closure: impl FnOnce(&Self) -> Result<T, E>,
) -> Result<T, E>;
fn try_run_mut<T, E>(
&mut self,
closure: impl FnOnce(&mut Self) -> Result<T, E>,
) -> Result<T, E>;
}
Required Methods§
Sourcefn run<T>(&self, closure: impl FnOnce(&Self) -> T) -> T
fn run<T>(&self, closure: impl FnOnce(&Self) -> T) -> T
Calls the specified closure
with Self
as an argument and returns its result.
Sourcefn run_mut<T>(&mut self, closure: impl FnOnce(&mut Self) -> T) -> T
fn run_mut<T>(&mut self, closure: impl FnOnce(&mut Self) -> T) -> T
Calls the specified closure
with mutable Self
as an argument and returns its result.
Sourcefn try_run<T, E>(
&self,
closure: impl FnOnce(&Self) -> Result<T, E>,
) -> Result<T, E>
fn try_run<T, E>( &self, closure: impl FnOnce(&Self) -> Result<T, E>, ) -> Result<T, E>
Calls the specified closure
with Self
as an argument and returns a Result
.
Sourcefn try_run_mut<T, E>(
&mut self,
closure: impl FnOnce(&mut Self) -> Result<T, E>,
) -> Result<T, E>
fn try_run_mut<T, E>( &mut self, closure: impl FnOnce(&mut Self) -> Result<T, E>, ) -> Result<T, E>
Calls the specified closure
with mutable Self
as an argument and returns a Result
.
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.