pub enum Initializer {
X(TlsNotaryRoots),
GitHub(TlsNotaryRoots),
Google(GoogleRoots),
}Expand description
What one Platform Verifier is initialized with.
Variants§
Implementations§
Source§impl Initializer
impl Initializer
Sourcepub const fn verifier(&self) -> PlatformVerifier
pub const fn verifier(&self) -> PlatformVerifier
Which verifier this initializes.
Sourcepub const fn honk_verifier(&self) -> Address
pub const fn honk_verifier(&self) -> Address
The Honk verifier it pins.
Sourcepub fn check(&self) -> Result<()>
pub fn check(&self) -> Result<()>
The rules initialize enforces that need no chain: a nonzero owner,
a nonzero Honk verifier, a Notary Service where the profile notarizes
(the Google shape cannot carry one at all), and a nonzero root list
for Google. The code hash is the one rule left to
call.
Sourcepub async fn call<P: Provider>(&self, provider: &P) -> Result<InitializeCall>
pub async fn call<P: Provider>(&self, provider: &P) -> Result<InitializeCall>
Build the initialize call: check, then read the
code hash of the Honk verifier through provider and pin it. Fails
when the address holds no code — the contract would refuse the
resulting hash, and a verifier that is not deployed yet is the
mis-wiring the check exists to catch.
Trait Implementations§
Source§impl Clone for Initializer
impl Clone for Initializer
impl Copy for Initializer
Source§impl Debug for Initializer
impl Debug for Initializer
impl Eq for Initializer
Source§impl PartialEq for Initializer
impl PartialEq for Initializer
impl StructuralPartialEq for Initializer
Auto Trait Implementations§
impl Freeze for Initializer
impl RefUnwindSafe for Initializer
impl Send for Initializer
impl Sync for Initializer
impl Unpin for Initializer
impl UnsafeUnpin for Initializer
impl UnwindSafe for Initializer
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more