odra_core/contract.rs
1/// The contract trait.
2pub trait OdraContract {
3 /// The host reference type.
4 #[cfg(not(target_arch = "wasm32"))]
5 type HostRef: crate::host::HostRef
6 + crate::host::EntryPointsCallerProvider
7 + crate::contract_def::HasIdent;
8 /// The contract reference type.
9 type ContractRef: crate::contract_env::ContractRef;
10 /// The init args type.
11 #[cfg(not(target_arch = "wasm32"))]
12 type InitArgs: crate::host::InitArgs;
13
14 /// The upgrade args type.
15 #[cfg(not(target_arch = "wasm32"))]
16 type UpgradeArgs: crate::host::UpgradeArgs;
17}