Expand description
Utilities in use by ink!.
These are kept separate from ink! core utilities to allow for more dynamic inter-crate
dependencies. The main problem is that today Cargo manages crate features on a
per-crate basis instead of a per-crate-target basis thus making dependencies from
ink (or others) to ink_env or ink_storage impossible.
By introducing ink_primitives we have a way to share utility components between
ink_env or ink_storage and other parts of the framework, like ink.
Re-exports§
pub use self::reflect::DecodeDispatch;pub use self::reflect::DispatchError;pub use self::sol::SolDecode;pub use self::sol::SolEncode;pub use self::types::AccountId;pub use self::types::AccountIdMapper;pub use self::types::Address;pub use self::types::Clear;pub use self::types::Hash;
Modules§
- abi
- Abstractions for ABI representation and encoding/decoding.
- contract
- reflect
- Definitions and utilities for ink! smart contract static reflection.
- sol
- Abstractions for implementing Solidity ABI encoding/decoding for arbitrary Rust types.
- types
Structs§
- H160
- Fixed-size uninterpreted hash type with 20 bytes (160 bits) size.
- H256
- Fixed-size uninterpreted hash type with 32 bytes (256 bits) size.
- KeyComposer
- Contains all rules related to storage key creation.
- U256
- Little-endian large integer type 256-bit unsigned integer.
- Weight
Enums§
- Code
Hash Err - Error encountered while trying to look up a contract’s hash.
- Lang
Error - An error emitted by the smart contracting language.
Type Aliases§
- Constructor
Result - The
Resulttype for ink! constructors. - Key
- A key into the smart contract storage.
- Message
Result - The
Resulttype for ink! messages.