Expand description
Modules
Implementation of EVM RLP reader/writer
A module for custom signature support.
Sealed traits.
Solidity type definitions (aliases from solidity name to rust type)
To be used in
solidity_interface
definitions, to make sure there is no
type conflict between Rust code and generated definitionsMacros
Implement dummy Contract trait, used for tests
Allows contract methods to return either T, or Result<T, String> for any T
Returns solidity topic (hash) by its textual representation
Returns solidity function selector (first 4 bytes of hash) by its
textual representation
Generate “tests”, which will generate solidity code on execution and print it to stdout
Script at
.maintain/scripts/generate_api.sh
can split this output from test runtimeMacro to create signatures of types and functions.
Structs
Example of
PostInfo
, used in testsEnums
Implementation of ERC165 is implicitly generated for all interfaces in
solidity_interface
,
this structure holds parsed data for ERC165Call
subvariantTraits
Parseable EVM call, this trait should be implemented with
solidity_interface
macroType callable with ethereum message, may be implemented by
solidity_interface
macro
on interface implementation, or for externally-owned real EVM contractContract configuration
Implementation of this trait should not be written manually,
instead use
crate::ToLog
proc macros.Type Definitions
Contract specific result type
Contract specific result type
Attribute Macros
Derives call enum implementing
crate::Callable
and crate::Call
from impl block.