Expand description
Solc artifact types.
Re-exports§
pub use serde_helpers::deserialize_bytes;pub use serde_helpers::deserialize_opt_bytes;pub use error::*;pub use ast::*;pub use remappings::*;pub use bytecode::*;pub use contract::*;pub use configurable::*;pub use sources::*;
Modules§
- Bindings for the Solidity and Yul ASTs.
 - Bytecode related types.
 - Contract related types.
 - Hardhat support
 - Bindings for standard json output selection.
 - Serde helpers.
 
Structs§
- Output type
solcproduces - Debugging settings for solc
 - A wrapper type for all libraries in the form of
<file>:<lib>:<addr> - A helper type that ensures lossless (de)serialisation so we can preserve the exact String metadata value that’s being hashed by solc
 - Bindings for
solccontract metadata - Compiler settings
 - Compilation source files/source units, keys are file names
 - Model checker settings for solc
 - Byte offsets into the bytecode. Linking replaces the 20 bytes located there.
 - A wrapper helper type for the
Contractstype alias - Input type
solcexpects. - A wrapper type for a list of source files:
path -> SourceFile. - A
CompilerInputrepresentation used for verify - Represents the
storage-layoutsection of theCompilerOutputif selected. 
Enums§
- Determines the hash method for the metadata hash that is appended to the bytecode.
 - Available EOF versions.
 - EVM versions.
 - Which model checker engine to run.
 - Which model checker invariants to check.
 - Which model checker solvers to check.
 - Which model checker targets to check.
 - How to treat revert (and require) reason strings.
 - Languages supported by the Solc compiler.
 
Constants§
Type Aliases§
- file -> (contract name -> Contract)
 - Solidity files are made up of multiple
source units, a solidity contract is such asource unit, therefore a solidity file can contain multiple contracts: (1-N*) relationship.