1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
use ref_thread_local::RefThreadLocal;

mod balance;
mod callstack;
mod contract_container;
pub mod contract_env;
mod contract_register;
mod debug;
mod mock_vm;
mod native_token;
mod storage;
pub mod test_env;

pub use contract_container::{EntrypointArgs, EntrypointCall};

ref_thread_local::ref_thread_local!(
    static managed ENV: mock_vm::MockVm = mock_vm::MockVm::default();
);

pub(crate) fn borrow_env<'a>() -> ref_thread_local::Ref<'a, mock_vm::MockVm> {
    ENV.borrow()
}

pub use odra_mock_vm_types as types;