ethers-contract-abigen 2.0.14

Code generation for type-safe bindings to Ethereum smart contracts
Documentation
[package]
name = "ethers-contract-abigen"
authors = [
    "Nicholas Rodrigues Lordello <nlordell@gmail.com>",
    "Georgios Konstantopoulos <me@gakonst.com>",
]
readme = "README.md"
description = "Code generation for type-safe bindings to Ethereum smart contracts"

version.workspace = true
edition.workspace = true
rust-version.workspace = true
license.workspace = true
documentation.workspace = true
repository.workspace = true
homepage.workspace = true
categories.workspace = true
keywords.workspace = true

[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]

[package.metadata.playground]
all-features = true

[dependencies]
ethers-core = { workspace = true, features = ["macros"] }

proc-macro2.workspace = true
quote.workspace = true
syn = { workspace = true, features = ["full"] }
prettyplease = { version = "0.2", features = ["verbatim"] }

Inflector.workspace = true
serde.workspace = true
serde_json.workspace = true
hex.workspace = true
dunce.workspace = true
walkdir.workspace = true
eyre.workspace = true
regex.workspace = true
toml.workspace = true

[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
# online
ethers-etherscan = { workspace = true, optional = true }
reqwest = { workspace = true, features = ["blocking"], optional = true }
tokio = { workspace = true, optional = true }
url = { workspace = true, optional = true }

[features]
default = ["providers"]

providers = []

online = ["reqwest", "ethers-etherscan", "url", "tokio"]
rustls = ["reqwest?/rustls-tls", "ethers-etherscan?/rustls"]
openssl = ["reqwest?/native-tls", "ethers-etherscan?/openssl"]

[dev-dependencies]
tempfile.workspace = true