pub struct SignedAuthorization { /* private fields */ }
Expand description
A signed EIP-7702 authorization.
Implementations§
Source§impl SignedAuthorization
impl SignedAuthorization
Sourcepub fn new_unchecked(
inner: Authorization,
y_parity: u8,
r: Uint<256, 4>,
s: Uint<256, 4>,
) -> SignedAuthorization
pub fn new_unchecked( inner: Authorization, y_parity: u8, r: Uint<256, 4>, s: Uint<256, 4>, ) -> SignedAuthorization
Creates a new signed authorization from raw signature values.
Sourcepub fn signature(&self) -> Result<PrimitiveSignature, SignatureError>
pub fn signature(&self) -> Result<PrimitiveSignature, SignatureError>
Gets the signature
for the authorization. Returns SignatureError
if signature could
not be constructed from vrs values.
Note that this signature might still be invalid for recovery as it might have s
value
greater than secp256k1n/2.
Sourcepub const fn strip_signature(self) -> Authorization
pub const fn strip_signature(self) -> Authorization
Returns the inner Authorization
.
Sourcepub const fn inner(&self) -> &Authorization
pub const fn inner(&self) -> &Authorization
Returns the inner Authorization
.
Source§impl SignedAuthorization
impl SignedAuthorization
Recover the authority for the authorization.
§Note
Implementers should check that the authority has no code.
Sourcepub fn into_recovered(self) -> RecoveredAuthorization
pub fn into_recovered(self) -> RecoveredAuthorization
Recover the authority and transform the signed authorization into a
RecoveredAuthorization
.
Methods from Deref<Target = Authorization>§
Sourcepub fn chain_id(&self) -> u64
pub fn chain_id(&self) -> u64
Get the chain_id
for the authorization.
§Note
Implementers should check that this matches the current chain_id
or is 0.
Sourcepub fn signature_hash(&self) -> FixedBytes<32>
pub fn signature_hash(&self) -> FixedBytes<32>
Computes the signature hash used to sign the authorization, or recover the authority from a signed authorization list item.
The signature hash is keccak(MAGIC || rlp([chain_id, address, nonce]))
Trait Implementations§
Source§impl<'a> Arbitrary<'a> for SignedAuthorization
impl<'a> Arbitrary<'a> for SignedAuthorization
Source§fn arbitrary(u: &mut Unstructured<'a>) -> Result<SignedAuthorization, Error>
fn arbitrary(u: &mut Unstructured<'a>) -> Result<SignedAuthorization, Error>
Self
from the given unstructured data. Read moreSource§fn arbitrary_take_rest(u: Unstructured<'a>) -> Result<Self, Error>
fn arbitrary_take_rest(u: Unstructured<'a>) -> Result<Self, Error>
Self
from the entirety of the given
unstructured data. Read moreSource§fn size_hint(depth: usize) -> (usize, Option<usize>)
fn size_hint(depth: usize) -> (usize, Option<usize>)
Unstructured
this type
needs to construct itself. Read moreSource§fn try_size_hint(
depth: usize,
) -> Result<(usize, Option<usize>), MaxRecursionReached>
fn try_size_hint( depth: usize, ) -> Result<(usize, Option<usize>), MaxRecursionReached>
Unstructured
this type
needs to construct itself. Read moreSource§impl Clone for SignedAuthorization
impl Clone for SignedAuthorization
Source§fn clone(&self) -> SignedAuthorization
fn clone(&self) -> SignedAuthorization
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for SignedAuthorization
impl Debug for SignedAuthorization
Source§impl Decodable for SignedAuthorization
impl Decodable for SignedAuthorization
Source§impl Deref for SignedAuthorization
impl Deref for SignedAuthorization
Source§type Target = Authorization
type Target = Authorization
Source§impl<'de> Deserialize<'de> for SignedAuthorization
impl<'de> Deserialize<'de> for SignedAuthorization
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<SignedAuthorization, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<SignedAuthorization, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Source§impl Encodable for SignedAuthorization
impl Encodable for SignedAuthorization
Source§impl From<SignedAuthorization> for RecoveredAuthority
impl From<SignedAuthorization> for RecoveredAuthority
Source§fn from(value: SignedAuthorization) -> RecoveredAuthority
fn from(value: SignedAuthorization) -> RecoveredAuthority
Source§impl From<SignedAuthorization> for RecoveredAuthorization
impl From<SignedAuthorization> for RecoveredAuthorization
Source§fn from(value: SignedAuthorization) -> RecoveredAuthorization
fn from(value: SignedAuthorization) -> RecoveredAuthorization
Source§impl Hash for SignedAuthorization
impl Hash for SignedAuthorization
Source§impl PartialEq for SignedAuthorization
impl PartialEq for SignedAuthorization
Source§impl Serialize for SignedAuthorization
impl Serialize for SignedAuthorization
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
impl Eq for SignedAuthorization
impl StructuralPartialEq for SignedAuthorization
Auto Trait Implementations§
impl Freeze for SignedAuthorization
impl RefUnwindSafe for SignedAuthorization
impl Send for SignedAuthorization
impl Sync for SignedAuthorization
impl Unpin for SignedAuthorization
impl UnwindSafe for SignedAuthorization
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> FmtForward for T
impl<T> FmtForward for T
Source§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
self
to use its Binary
implementation when Debug
-formatted.Source§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
self
to use its Display
implementation when
Debug
-formatted.Source§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
self
to use its LowerExp
implementation when
Debug
-formatted.Source§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
self
to use its LowerHex
implementation when
Debug
-formatted.Source§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
self
to use its Octal
implementation when Debug
-formatted.Source§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
self
to use its Pointer
implementation when
Debug
-formatted.Source§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
self
to use its UpperExp
implementation when
Debug
-formatted.Source§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
self
to use its UpperHex
implementation when
Debug
-formatted.Source§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
Source§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
Source§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
self
and passes that borrow into the pipe function. Read moreSource§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
self
and passes that borrow into the pipe function. Read moreSource§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
Source§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
Source§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
self
, then passes self.as_ref()
into the pipe function.Source§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
self
, then passes self.as_mut()
into the pipe
function.Source§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
self
, then passes self.deref()
into the pipe function.Source§impl<T> Tap for T
impl<T> Tap for T
Source§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Borrow<B>
of a value. Read moreSource§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
BorrowMut<B>
of a value. Read moreSource§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
AsRef<R>
view of a value. Read moreSource§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
AsMut<R>
view of a value. Read moreSource§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Deref::Target
of a value. Read moreSource§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Deref::Target
of a value. Read moreSource§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap()
only in debug builds, and is erased in release builds.Source§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut()
only in debug builds, and is erased in release
builds.Source§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
.tap_borrow()
only in debug builds, and is erased in release
builds.Source§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
.tap_borrow_mut()
only in debug builds, and is erased in release
builds.Source§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
.tap_ref()
only in debug builds, and is erased in release
builds.Source§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
.tap_ref_mut()
only in debug builds, and is erased in release
builds.Source§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
.tap_deref()
only in debug builds, and is erased in release
builds.