[−][src]Crate elrond_wasm
Re-exports
pub use elrond_codec; |
pub use io::*; |
pub use storage::storage_get; |
pub use storage::storage_set; |
pub use storage::BorrowedMutStorage; |
pub use finish::SCResult; |
pub use call_data::*; |
Modules
call_data | |
err_msg | |
h256 | |
io | |
non_zero_util | |
queue | |
storage |
Macros
contract_proxy | Handy way of casting to a contract proxy trait.
Would make more sense to be in elrond-wasm-derive, but Rust "cannot export macro_rules! macros from a |
imports | Getting all imports needed for a smart contract. |
mut_storage | Compact way to represent the BorrowedMutStorage type. |
non_zero_usize | Converts usize to NonZeroUsize or returns SCError. |
only_owner | Very compact way of not allowing anyone but the owner to call a function. |
require | Allows us to write Solidity style |
sc_error | Compact way of returning a static error message. |
sc_try | Equivalent of the ? operator for SCResult. |
Structs
Box | A pointer type for heap allocation. |
H256 | |
OtherContractHandle | |
Queue | A simple queue struct that is able to push and pop without moving elements. New items are pushed at the end, just like for a regular Vec. When popping, instead of performing a regular Vec remove that would shift items, a start index is moved up 1 position. When serializing, items before the start index are ignored. |
String | A UTF-8 encoded, growable string. |
Vec | A contiguous growable array type, written |
Enums
Sign |
Traits
BigIntApi | Definition of the BigInt type required by the API. |
BigUintApi | Definition of the BigUint type required by the API. The API doesn't care about the actual BigInt implementation. The Arwen VM provides an implementation directly in the protocol. For debugging we use a different implementation, based on Rust's BigInt. |
CallableContract | CallableContract is the means by which the debugger calls methods in the contract. |
ContractHookApi | Interface to be used by the actual smart contract code. |
ContractIOApi | Interface to only be used by code generated by the macros. The smart contract code doesn't have access to these methods directly. |
Type Definitions
Address |