Expand description
Typed bindings, embedded forge artifacts, and deploy/upgrade helpers for the libid contract stack.
The crate has three layers:
bindings— hand-writtenalloy::sol!interfaces for every contract a consumer talks to: the login stack (Registry,WebWallet,WalletFactory, verifiers), the Bank diamond, and the identity-names stack. Kept in lockstep with the Solidity sources insolidity/contracts.artifacts— the compiled creation bytecode, link references, and method identifiers of every deployable contract, embedded at compile time (Artifacts::embedded) so deployment needs no filesystem at runtime. A directory-backed variant (Artifacts::from_dir) reads a forgeout/tree instead.deploy/diamond— generic deploy and upgrade primitives over any alloyProvider: plain deploys, constructor args, ERC1967 proxies, library linking, UUPS upgrades, and the Bank EIP-2535 diamond deploy/facet-replace flows.factory— the deterministic-factory bootstrap: predict the canonical cross-network factory address, install it (and the keyless CREATE2 deployer it hangs off) where missing, and deploy protocol proxies through it at name-derived CREATE3 addresses.
Signing is the consumer’s concern: every helper takes a provider you have already wired with a wallet.
Re-exports§
pub use artifacts::Artifacts;
Modules§
- artifacts
- Access to the compiled forge artifacts the crate ships.
- bindings
- Hand-written
alloy::sol!bindings, kept in lockstep with the Solidity sources insolidity/contracts. Grouped by product area. - deploy
- Generic deploy and upgrade primitives, usable over any alloy
Providerthat has a wallet wired in. Signing is the consumer’s concern; nothing here constructs or holds keys. - diamond
- The Bank EIP-2535 diamond: deploy and facet-replace flows. Mirrors
solidity/contracts/transfer/script/BankDiamondDeployer.sol. - factory
- Bootstrap and use of the deterministic deployment factory.
Macros§
- send_
with_ nonce_ retry - Send a contract call with automatic retry on “nonce too low” errors.
Enums§
- Error
- Crate error type.
Type Aliases§
- Result
- Crate result alias.