pub struct FeeJuicePaymentMethodWithClaim { /* private fields */ }Expand description
Pays transaction fees by claiming Fee Juice from an L1-to-L2 bridge deposit.
This constructs a call to the FeeJuice protocol contract’s
claim_and_end_setup function, which:
- Consumes the L1-to-L2 message (proving the L1 deposit)
- Credits the sender’s Fee Juice balance
- Ends the transaction setup phase (making the balance available for fees)
The claim is placed in the non-revertible phase so the sequencer is guaranteed to collect fees even if the revertible portion fails.
Implementations§
Source§impl FeeJuicePaymentMethodWithClaim
impl FeeJuicePaymentMethodWithClaim
Sourcepub fn new(
sender: AztecAddress,
claim: L2AmountClaim,
) -> FeeJuicePaymentMethodWithClaim
pub fn new( sender: AztecAddress, claim: L2AmountClaim, ) -> FeeJuicePaymentMethodWithClaim
Create a new fee payment method that claims bridged Fee Juice.
sender is the account that will pay fees after claiming.
claim contains the L1 bridge deposit data needed for the claim.
Trait Implementations§
Source§impl FeePaymentMethod for FeeJuicePaymentMethodWithClaim
impl FeePaymentMethod for FeeJuicePaymentMethodWithClaim
Source§fn get_asset<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<AztecAddress, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
FeeJuicePaymentMethodWithClaim: 'async_trait,
fn get_asset<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<AztecAddress, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
FeeJuicePaymentMethodWithClaim: 'async_trait,
Returns the address of the asset used for fee payment.
For fee juice methods, this is the FeeJuice protocol contract address.
Source§fn get_fee_payer<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<AztecAddress, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
FeeJuicePaymentMethodWithClaim: 'async_trait,
fn get_fee_payer<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<AztecAddress, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
FeeJuicePaymentMethodWithClaim: 'async_trait,
Returns the address of the entity paying the fee.
Source§fn get_fee_execution_payload<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<ExecutionPayload, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
FeeJuicePaymentMethodWithClaim: 'async_trait,
fn get_fee_execution_payload<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<ExecutionPayload, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
FeeJuicePaymentMethodWithClaim: 'async_trait,
Builds an
ExecutionPayload containing the function calls and
auth witnesses needed to pay the transaction fee.Auto Trait Implementations§
impl Freeze for FeeJuicePaymentMethodWithClaim
impl RefUnwindSafe for FeeJuicePaymentMethodWithClaim
impl Send for FeeJuicePaymentMethodWithClaim
impl Sync for FeeJuicePaymentMethodWithClaim
impl Unpin for FeeJuicePaymentMethodWithClaim
impl UnwindSafe for FeeJuicePaymentMethodWithClaim
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<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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