Struct ethcontract::contract::Instance [−][src]
pub struct Instance<T: Transport> { pub defaults: MethodDefaults, // some fields omitted }
Expand description
Represents a contract instance at an address. Provides methods for contract interaction.
Fields
defaults: MethodDefaults
Default method parameters to use when sending method transactions or querying method calls.
Implementations
Creates a new contract instance with the specified web3
provider with
the given Abi
at the given Address
.
Note that this does not verify that a contract with a matching Abi
is
actually deployed at the given address.
pub fn with_deployment_info(
web3: Web3<T>,
abi: Abi,
address: Address,
deployment_information: Option<DeploymentInformation>
) -> Self
[src]
pub fn with_deployment_info(
web3: Web3<T>,
abi: Abi,
address: Address,
deployment_information: Option<DeploymentInformation>
) -> Self
[src]Creates a new contract instance with the specified web3
provider with
the given Abi
at the given Address
and an optional transaction hash.
This hash is used to retrieve contract related information such as the
creation block (which is useful for fetching all historic events).
Note that this does not verify that a contract with a matching Abi
is
actually deployed at the given address nor that the transaction hash,
when provided, is actually for this contract deployment.
Locates a deployed contract based on the current network ID reported by
the web3
provider from the given Artifact
’s ABI and networks.
Note that this does not verify that a contract with a matchin Abi
is
actually deployed at the given address.
pub fn builder<P>(
web3: Web3<T>,
artifact: Artifact,
params: P
) -> Result<DeployBuilder<T, Self>, DeployError> where
P: Tokenize,
[src]
pub fn builder<P>(
web3: Web3<T>,
artifact: Artifact,
params: P
) -> Result<DeployBuilder<T, Self>, DeployError> where
P: Tokenize,
[src]Creates a contract builder with the specified web3
provider and the
given Artifact
byte code. This allows the contract deployment
transaction to be configured before deploying the contract.
pub fn link_and_deploy<'a, P, I>(
web3: Web3<T>,
artifact: Artifact,
params: P,
libraries: I
) -> Result<DeployBuilder<T, Self>, DeployError> where
P: Tokenize,
I: Iterator<Item = (&'a str, Address)>,
[src]
pub fn link_and_deploy<'a, P, I>(
web3: Web3<T>,
artifact: Artifact,
params: P,
libraries: I
) -> Result<DeployBuilder<T, Self>, DeployError> where
P: Tokenize,
I: Iterator<Item = (&'a str, Address)>,
[src]Deploys a contract with the specified web3
provider with the given
Artifact
byte code and linking libraries.
Retrieve the underlying web3 provider used by this contract instance.
Returns the hash for the transaction that deployed the contract if it is
known, None
otherwise.
Returns a method builder to setup a call or transaction on a smart contract method. Note that calls just get evaluated on a node but do not actually commit anything to the block chain.
pub fn view_method<P, R>(
&self,
signature: H32,
params: P
) -> AbiResult<ViewMethodBuilder<T, R>> where
P: Tokenize,
R: Tokenize,
[src]
pub fn view_method<P, R>(
&self,
signature: H32,
params: P
) -> AbiResult<ViewMethodBuilder<T, R>> where
P: Tokenize,
R: Tokenize,
[src]Returns a view method builder to setup a call to a smart contract. View method builders can’t actually send transactions and only query contract state.
Returns a method builder to setup a call to a smart contract’s fallback function.
This method will error if the ABI does not contain an entry for a fallback function.
Returns a event builder to setup an event stream for a smart contract that emits events for the specified Solidity event by name.
Returns a log stream that emits a log for every new event emitted after the stream was created for this contract instance.
Trait Implementations
Auto Trait Implementations
impl<T> RefUnwindSafe for Instance<T> where
T: RefUnwindSafe,
impl<T> UnwindSafe for Instance<T> where
T: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
type Output = T
type Output = T
Should always be Self
pub fn vzip(self) -> V