pub trait EnsureOriginWithArg<OuterOrigin, Argument> {
type Success;
// Required methods
fn try_origin(
o: OuterOrigin,
a: &Argument,
) -> Result<Self::Success, OuterOrigin>;
fn try_successful_origin(a: &Argument) -> Result<OuterOrigin, ()>;
// Provided method
fn ensure_origin(
o: OuterOrigin,
a: &Argument,
) -> Result<Self::Success, BadOrigin> { ... }
}
Expand description
Some sort of check on the origin is performed by this object.
Required Associated Types§
Required Methods§
Sourcefn try_origin(
o: OuterOrigin,
a: &Argument,
) -> Result<Self::Success, OuterOrigin>
fn try_origin( o: OuterOrigin, a: &Argument, ) -> Result<Self::Success, OuterOrigin>
Perform the origin check, returning the origin value if unsuccessful. This allows chaining.
Sourcefn try_successful_origin(a: &Argument) -> Result<OuterOrigin, ()>
fn try_successful_origin(a: &Argument) -> Result<OuterOrigin, ()>
Attempt to get an outer origin capable of passing try_origin
check. May return Err
if it
is impossible.
** Should be used for benchmarking only!!! **
Provided Methods§
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.