pub struct ERC20Instance<P, N = Ethereum> { /* private fields */ }Expand description
A ERC20 instance.
Contains type-safe methods for interacting with an on-chain instance of the
ERC20 contract located at a given address, using a given
provider P.
If the contract bytecode is available (see the sol!
documentation on how to provide it), the deploy and deploy_builder methods can
be used to deploy a new instance of the contract.
See the module-level documentation for all the available methods.
Implementations§
Source§impl<P: Provider<N>, N: Network> ERC20Instance<P, N>
Instantiation and getters/setters.
impl<P: Provider<N>, N: Network> ERC20Instance<P, N>
Instantiation and getters/setters.
Sourcepub const fn new(address: Address, __provider: P) -> Self
pub const fn new(address: Address, __provider: P) -> Self
Creates a new wrapper around an on-chain ERC20 contract instance.
See the wrapper’s documentation for more details.
Sourcepub fn set_address(&mut self, address: Address)
pub fn set_address(&mut self, address: Address)
Sets the address.
Source§impl<P: Clone, N> ERC20Instance<&P, N>
impl<P: Clone, N> ERC20Instance<&P, N>
Sourcepub fn with_cloned_provider(self) -> ERC20Instance<P, N>
pub fn with_cloned_provider(self) -> ERC20Instance<P, N>
Clones the provider and returns a new instance with the cloned provider.
Source§impl<P: Provider<N>, N: Network> ERC20Instance<P, N>
Function calls.
impl<P: Provider<N>, N: Network> ERC20Instance<P, N>
Function calls.
Sourcepub fn call_builder<C: SolCall>(&self, call: &C) -> SolCallBuilder<&P, C, N>
pub fn call_builder<C: SolCall>(&self, call: &C) -> SolCallBuilder<&P, C, N>
Creates a new call builder using this contract instance’s provider and address.
Note that the call can be any function call, not just those defined in this contract. Prefer using the other methods for building type-safe contract calls.
Sourcepub fn DOMAIN_SEPARATOR(&self) -> SolCallBuilder<&P, DOMAIN_SEPARATORCall, N>
pub fn DOMAIN_SEPARATOR(&self) -> SolCallBuilder<&P, DOMAIN_SEPARATORCall, N>
Creates a new call builder for the [DOMAIN_SEPARATOR] function.
Sourcepub fn allowance(
&self,
owner: Address,
spender: Address,
) -> SolCallBuilder<&P, allowanceCall, N>
pub fn allowance( &self, owner: Address, spender: Address, ) -> SolCallBuilder<&P, allowanceCall, N>
Creates a new call builder for the [allowance] function.
Sourcepub fn approve(
&self,
spender: Address,
amount: U256,
) -> SolCallBuilder<&P, approveCall, N>
pub fn approve( &self, spender: Address, amount: U256, ) -> SolCallBuilder<&P, approveCall, N>
Creates a new call builder for the [approve] function.
Sourcepub fn balanceOf(
&self,
account: Address,
) -> SolCallBuilder<&P, balanceOfCall, N>
pub fn balanceOf( &self, account: Address, ) -> SolCallBuilder<&P, balanceOfCall, N>
Creates a new call builder for the [balanceOf] function.
Sourcepub fn bridgeBurn(
&self,
account: Address,
amount: U256,
) -> SolCallBuilder<&P, bridgeBurnCall, N>
pub fn bridgeBurn( &self, account: Address, amount: U256, ) -> SolCallBuilder<&P, bridgeBurnCall, N>
Creates a new call builder for the [bridgeBurn] function.
Sourcepub fn bridgeMint(
&self,
account: Address,
amount: U256,
) -> SolCallBuilder<&P, bridgeMintCall, N>
pub fn bridgeMint( &self, account: Address, amount: U256, ) -> SolCallBuilder<&P, bridgeMintCall, N>
Creates a new call builder for the [bridgeMint] function.
Sourcepub fn decimals(&self) -> SolCallBuilder<&P, decimalsCall, N>
pub fn decimals(&self) -> SolCallBuilder<&P, decimalsCall, N>
Creates a new call builder for the [decimals] function.
Sourcepub fn decreaseAllowance(
&self,
spender: Address,
subtractedValue: U256,
) -> SolCallBuilder<&P, decreaseAllowanceCall, N>
pub fn decreaseAllowance( &self, spender: Address, subtractedValue: U256, ) -> SolCallBuilder<&P, decreaseAllowanceCall, N>
Creates a new call builder for the [decreaseAllowance] function.
Sourcepub fn deposit(&self) -> SolCallBuilder<&P, depositCall, N>
pub fn deposit(&self) -> SolCallBuilder<&P, depositCall, N>
Creates a new call builder for the [deposit] function.
Sourcepub fn depositTo(
&self,
account: Address,
) -> SolCallBuilder<&P, depositToCall, N>
pub fn depositTo( &self, account: Address, ) -> SolCallBuilder<&P, depositToCall, N>
Creates a new call builder for the [depositTo] function.
Sourcepub fn increaseAllowance(
&self,
spender: Address,
addedValue: U256,
) -> SolCallBuilder<&P, increaseAllowanceCall, N>
pub fn increaseAllowance( &self, spender: Address, addedValue: U256, ) -> SolCallBuilder<&P, increaseAllowanceCall, N>
Creates a new call builder for the [increaseAllowance] function.
Sourcepub fn initialize(
&self,
_name: String,
_symbol: String,
_decimals: u8,
_l2Gateway: Address,
_l1Address: Address,
) -> SolCallBuilder<&P, initializeCall, N>
pub fn initialize( &self, _name: String, _symbol: String, _decimals: u8, _l2Gateway: Address, _l1Address: Address, ) -> SolCallBuilder<&P, initializeCall, N>
Creates a new call builder for the [initialize] function.
Sourcepub fn l1Address(&self) -> SolCallBuilder<&P, l1AddressCall, N>
pub fn l1Address(&self) -> SolCallBuilder<&P, l1AddressCall, N>
Creates a new call builder for the [l1Address] function.
Sourcepub fn l2Gateway(&self) -> SolCallBuilder<&P, l2GatewayCall, N>
pub fn l2Gateway(&self) -> SolCallBuilder<&P, l2GatewayCall, N>
Creates a new call builder for the [l2Gateway] function.
Sourcepub fn name(&self) -> SolCallBuilder<&P, nameCall, N>
pub fn name(&self) -> SolCallBuilder<&P, nameCall, N>
Creates a new call builder for the [name] function.
Sourcepub fn nonces(&self, owner: Address) -> SolCallBuilder<&P, noncesCall, N>
pub fn nonces(&self, owner: Address) -> SolCallBuilder<&P, noncesCall, N>
Creates a new call builder for the [nonces] function.
Sourcepub fn permit(
&self,
owner: Address,
spender: Address,
value: U256,
deadline: U256,
v: u8,
r: FixedBytes<32>,
s: FixedBytes<32>,
) -> SolCallBuilder<&P, permitCall, N>
pub fn permit( &self, owner: Address, spender: Address, value: U256, deadline: U256, v: u8, r: FixedBytes<32>, s: FixedBytes<32>, ) -> SolCallBuilder<&P, permitCall, N>
Creates a new call builder for the [permit] function.
Sourcepub fn symbol(&self) -> SolCallBuilder<&P, symbolCall, N>
pub fn symbol(&self) -> SolCallBuilder<&P, symbolCall, N>
Creates a new call builder for the [symbol] function.
Sourcepub fn totalSupply(&self) -> SolCallBuilder<&P, totalSupplyCall, N>
pub fn totalSupply(&self) -> SolCallBuilder<&P, totalSupplyCall, N>
Creates a new call builder for the [totalSupply] function.
Sourcepub fn transfer(
&self,
recipient: Address,
amount: U256,
) -> SolCallBuilder<&P, transferCall, N>
pub fn transfer( &self, recipient: Address, amount: U256, ) -> SolCallBuilder<&P, transferCall, N>
Creates a new call builder for the [transfer] function.
Sourcepub fn transferAndCall(
&self,
_to: Address,
_value: U256,
_data: Bytes,
) -> SolCallBuilder<&P, transferAndCallCall, N>
pub fn transferAndCall( &self, _to: Address, _value: U256, _data: Bytes, ) -> SolCallBuilder<&P, transferAndCallCall, N>
Creates a new call builder for the [transferAndCall] function.
Sourcepub fn transferFrom(
&self,
sender: Address,
recipient: Address,
amount: U256,
) -> SolCallBuilder<&P, transferFromCall, N>
pub fn transferFrom( &self, sender: Address, recipient: Address, amount: U256, ) -> SolCallBuilder<&P, transferFromCall, N>
Creates a new call builder for the [transferFrom] function.
Sourcepub fn withdraw(&self, amount: U256) -> SolCallBuilder<&P, withdrawCall, N>
pub fn withdraw(&self, amount: U256) -> SolCallBuilder<&P, withdrawCall, N>
Creates a new call builder for the [withdraw] function.
Sourcepub fn withdrawTo(
&self,
account: Address,
amount: U256,
) -> SolCallBuilder<&P, withdrawToCall, N>
pub fn withdrawTo( &self, account: Address, amount: U256, ) -> SolCallBuilder<&P, withdrawToCall, N>
Creates a new call builder for the [withdrawTo] function.
Source§impl<P: Provider<N>, N: Network> ERC20Instance<P, N>
Event filters.
impl<P: Provider<N>, N: Network> ERC20Instance<P, N>
Event filters.
Sourcepub fn event_filter<E: SolEvent>(&self) -> Event<&P, E, N>
pub fn event_filter<E: SolEvent>(&self) -> Event<&P, E, N>
Creates a new event filter using this contract instance’s provider and address.
Note that the type can be any event, not just those defined in this contract. Prefer using the other methods for building type-safe event filters.
Sourcepub fn Approval_filter(&self) -> Event<&P, Approval, N>
pub fn Approval_filter(&self) -> Event<&P, Approval, N>
Creates a new event filter for the Approval event.
Sourcepub fn Transfer_0_filter(&self) -> Event<&P, Transfer_0, N>
pub fn Transfer_0_filter(&self) -> Event<&P, Transfer_0, N>
Creates a new event filter for the Transfer_0 event.
Sourcepub fn Transfer_1_filter(&self) -> Event<&P, Transfer_1, N>
pub fn Transfer_1_filter(&self) -> Event<&P, Transfer_1, N>
Creates a new event filter for the Transfer_1 event.
Trait Implementations§
Source§impl<P: Clone, N: Clone> Clone for ERC20Instance<P, N>
impl<P: Clone, N: Clone> Clone for ERC20Instance<P, N>
Source§fn clone(&self) -> ERC20Instance<P, N>
fn clone(&self) -> ERC20Instance<P, N>
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl<P, N> Freeze for ERC20Instance<P, N>where
P: Freeze,
impl<P, N> RefUnwindSafe for ERC20Instance<P, N>where
P: RefUnwindSafe,
N: RefUnwindSafe,
impl<P, N> Send for ERC20Instance<P, N>
impl<P, N> Sync for ERC20Instance<P, N>
impl<P, N> Unpin for ERC20Instance<P, N>
impl<P, N> UnwindSafe for ERC20Instance<P, N>where
P: UnwindSafe,
N: UnwindSafe,
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§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>
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>
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