Skip to main content

AddressModelKeccak256

Struct AddressModelKeccak256 

Source
pub struct AddressModelKeccak256;

Trait Implementations§

Source§

impl<'a> PrismModel<'a, DefaultHostTypes, AddrBounds, Keccak256Hasher, prism::pipeline::prism_model! { pub struct $model; pub struct $route; impl PrismModel< prism::vocabulary::DefaultHostTypes, $bounds, $hasher, $crate::resolvers::AddressResolverTuple<$hasher>, prism::pipeline::EmptyCommitment > for $model { type Input = $input; type Output = $shape; type Route = $route; fn route(input: Self::Input) -> Self::Output { $verb(input) } } }, prism::pipeline::prism_model! { pub struct $model; pub struct $route; impl PrismModel< prism::vocabulary::DefaultHostTypes, $bounds, $hasher, $crate::resolvers::AddressResolverTuple<$hasher>, prism::pipeline::EmptyCommitment > for $model { type Input = $input; type Output = $shape; type Route = $route; fn route(input: Self::Input) -> Self::Output { $verb(input) } } }, AddressResolverTuple<Keccak256Hasher>> for AddressModelKeccak256

Source§

type Input = CodeModuleCarrier<'a>

Input feature type — a ConstrainedTypeShape impl declared in foundation vocabulary. Per wiki ADR-023 (amended by ADR-060), Input is also bound by IntoBindingValue<'a> so run_route can flow the runtime input value (as a source-polymorphic TermValue carrier) into the CompileUnit binding table for Term::Variable { name_index: 0 } (the route’s input-parameter slot per ADR-022 D3 G2). The lifetime 'a is the borrowed-input-data lifetime the carrier (and the resulting Grounded<'a> output) propagates.
Source§

type Output = AddressLabelKeccak256

Output label type — a ConstrainedTypeShape impl declared in foundation vocabulary that is also a crate::enforcement::GroundedShape.
Source§

type Route = AddressRouteKeccak256

Type-level witness of the term tree mapping Input to Output. Bound by FoundationClosed: the prism_model! macro emits the FoundationClosed impl for this witness iff every node is a foundation-vocabulary item, satisfying the closure check at the application’s compile time per UORassembly (TC-04).
Source§

fn forward( input: <Self as PrismModel<'a, DefaultHostTypes, AddrBounds, Keccak256Hasher, { _ }, { <crate::bounds::AddrBounds as ::uor_foundation::HostBounds>::FINGERPRINT_MAX_BYTES }, AddressResolverTuple<Keccak256Hasher>, EmptyCommitment>>::Input, ) -> Result<Grounded<'a, <Self as PrismModel<'a, DefaultHostTypes, AddrBounds, Keccak256Hasher, { _ }, { <crate::bounds::AddrBounds as ::uor_foundation::HostBounds>::FINGERPRINT_MAX_BYTES }, AddressResolverTuple<Keccak256Hasher>, EmptyCommitment>>::Output, { _ }, { <crate::bounds::AddrBounds as ::uor_foundation::HostBounds>::FINGERPRINT_MAX_BYTES }>, PipelineFailure>

The catamorphism into run_route’s runtime carrier. Implementations are emitted by the prism_model! macro from the syntactic Route declaration; the macro derives the body via initiality of Term (wiki ADR-019). The canonical body is run_route::<H, B, A, Self>(input) (per ADR-022 D5). Read more
Source§

impl Sealed for AddressModelKeccak256

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.