1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
use crate::abi::EndpointLocationAbi;
use super::{
BlockchainApi, CallTypeApi, CallValueApi, CryptoApi, EndpointArgumentApi, EndpointFinishApi,
ErrorApi, LogApi, ManagedTypeApi, PrintApi, SendApi, StorageMapperApi, StorageReadApi,
StorageReadApiImpl, StorageWriteApi,
};
pub trait VMApi:
ManagedTypeApi
+ BlockchainApi
+ CallValueApi
+ CryptoApi
+ EndpointArgumentApi
+ EndpointFinishApi
+ ErrorApi
+ LogApi
+ SendApi
+ StorageReadApi
+ StorageWriteApi
+ PrintApi
+ CallTypeApi
+ StorageMapperApi
+ Clone
+ PartialEq
+ Eq
{
fn has_location(location: EndpointLocationAbi) -> bool {
location == EndpointLocationAbi::MainContract
}
fn init_static() {
Self::storage_read_api_impl().storage_read_api_init();
}
}