Expand description
Conveniently groups all framework imports required by a smart contract form the framework.
Re-exports§
pub use crate::abi::TypeAbi;
pub use crate::api::ErrorApiImpl;
pub use crate::api::ManagedTypeApi;
pub use crate::api::VMApi;
pub use crate::contract_base::ContractBase;
pub use crate::contract_base::ProxyObjBase;
pub use crate::contract_base::ProxyObjNew;
pub use crate::err_msg;
pub use crate::io::*;
pub use crate::non_zero_util::*;
pub use crate::storage::mappers::*;
pub use crate::types::*;
Macros§
- non_
zero_ usize - Converts usize to NonZeroUsize or returns SCError.
- require
- Allows us to write Solidity style
require!(<condition>, <error_msg>)
and avoid if statements. - sc_
format - sc_
panic - sc_
print
Structs§
- Array
Vec - A vector with a fixed capacity.
- Decode
Error - ESDT
SystemSC Proxy - Proxy for the ESDT system smart contract.
- ESDT
SystemSC Proxy Methods - Method container of the ESDT system smart contract proxy.
- ESDT
System Smart Contract Proxy Deprecated - Proxy for the ESDT system smart contract. Unlike other contract proxies, this one has a fixed address, so the proxy object doesn’t really contain any data, it is more of a placeholder.
- Empty
- Empty structure with an empty bytes representation. Equivalent to
false
,0
or[u8; 0]
, but more explicit. - Fungible
Token Properties - Ignore
Value - Structure that allows taking a variable number of arguments, but does nothing with them, not even deserialization.
- Meta
Token Properties - Multi
Value2 - Multi
Value3 - Multi
Value4 - Multi
Value5 - Multi
Value6 - Multi
Value7 - Multi
Value8 - Multi
Value9 - Multi
Value10 - Multi
Value11 - Multi
Value12 - Multi
Value13 - Multi
Value14 - Multi
Value15 - Multi
Value16 - Multi
Value Vec - Structure that allows taking a variable number of arguments or returning a variable number of results in a smart contract endpoint.
- NonFungible
Token Properties - Placeholder
Input - Temporary value used for any kind of templates.
- Placeholder
Output - Temporary value used for any kind of templates.
- Semi
Fungible Token Properties - Token
Properties - Token
Property Arguments - Represents property arguments to be sent to the system SC.
- User
Builtin Proxy - Proxy describing the user builtin function signatures.
- User
Builtin Proxy Methods
Enums§
- Optional
Value - A smart contract argument or result that can be missing.
Traits§
- Add
- The addition operator
+
. - AddAssign
- The addition assignment operator
+=
. - BitAnd
- The bitwise AND operator
&
. - BitAnd
Assign - The bitwise AND assignment operator
&=
. - BitOr
- The bitwise OR operator
|
. - BitOr
Assign - The bitwise OR assignment operator
|=
. - BitXor
- The bitwise XOR operator
^
. - BitXor
Assign - The bitwise XOR assignment operator
^=
. - Div
- The division operator
/
. - DivAssign
- The division assignment operator
/=
. - Into
Multi Value - Defines conversion of a type to its multi-value representation.
- Mul
- The multiplication operator
*
. - MulAssign
- The multiplication assignment operator
*=
. - Nested
Decode - Trait that allows zero-copy read of value-references from slices in LE format.
- Nested
Encode - Trait that allows zero-copy write of value-references to slices in LE format.
- Rem
- The remainder operator
%
. - RemAssign
- The remainder assignment operator
%=
. - Shl
- The left shift operator
<<
. Note that because this trait is implemented for all integer types with multiple right-hand-side types, Rust’s type checker has special handling for_ << _
, setting the result type for integer operations to the type of the left-hand-side operand. This means that thougha << b
anda.shl(b)
are one and the same from an evaluation standpoint, they are different when it comes to type inference. - ShlAssign
- The left shift assignment operator
<<=
. - Shr
- The right shift operator
>>
. Note that because this trait is implemented for all integer types with multiple right-hand-side types, Rust’s type checker has special handling for_ >> _
, setting the result type for integer operations to the type of the left-hand-side operand. This means that thougha >> b
anda.shr(b)
are one and the same from an evaluation standpoint, they are different when it comes to type inference. - ShrAssign
- The right shift assignment operator
>>=
. - Sub
- The subtraction operator
-
. - SubAssign
- The subtraction assignment operator
-=
. - TopDecode
- Trait that allows zero-copy read of values from an underlying API in big endian format.
- TopEncode
Type Aliases§
- Issue
Call - The specific
Tx
type produces by the issue operations of the ESDTSystemSCProxy.