Struct ethers_core::utils::Anvil

source ·
pub struct Anvil { /* private fields */ }
Expand description

Builder for launching anvil.

Panics

If spawn is called without anvil being available in the user’s $PATH

Example

use ethers_core::utils::Anvil;

let port = 8545u16;
let url = format!("http://localhost:{}", port).to_string();

let anvil = Anvil::new()
    .port(port)
    .mnemonic("abstract vacuum mammal awkward pudding scene penalty purchase dinner depart evoke puzzle")
    .spawn();

drop(anvil); // this will kill the instance

Implementations§

Creates an empty Anvil builder. The default port is 8545. The mnemonic is chosen randomly.

Example
fn a() {
 let anvil = Anvil::default().spawn();

 println!("Anvil running at `{}`", anvil.endpoint());

Creates an Anvil builder which will execute anvil at the given path.

Example
fn a() {
 let anvil = Anvil::at("~/.foundry/bin/anvil").spawn();

 println!("Anvil running at `{}`", anvil.endpoint());

Sets the path to the anvil cli

By default, it’s expected that anvil is in $PATH, see also std::process::Command::new()

Sets the port which will be used when the anvil instance is launched.

Sets the chain_id the anvil instance will use.

Sets the mnemonic which will be used when the anvil instance is launched.

Sets the block-time which will be used when the anvil instance is launched.

Sets the fork-block-number which will be used in addition to Self::fork.

Note: if set, then this requires fork to be set as well

Sets the fork argument to fork from another currently running Ethereum client at a given block. Input should be the HTTP location and port of the other client, e.g. http://localhost:8545. You can optionally specify the block to fork from using an @ sign: http://localhost:8545@1599200

Adds an argument to pass to the anvil.

Adds multiple arguments to pass to the anvil.

Sets the timeout which will be used when the anvil instance is launched.

Consumes the builder and spawns anvil with stdout redirected to /dev/null.

Trait Implementations§

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Should always be Self
The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.