near_vm_logic/
config.rs

1use borsh::{BorshDeserialize, BorshSerialize};
2use serde::{Deserialize, Serialize};
3use std::hash::Hash;
4
5#[derive(Clone, Copy, Debug, Hash, Serialize, Deserialize, BorshSerialize, BorshDeserialize)]
6pub enum VMKind {
7    /// Wasmer VM.
8    Wasmer,
9    /// Wasmtime VM.
10    Wasmtime,
11}
12
13impl Default for VMKind {
14    #[cfg(feature = "wasmer_default")]
15    fn default() -> Self {
16        VMKind::Wasmer
17    }
18
19    #[cfg(feature = "wasmtime_default")]
20    fn default() -> Self {
21        VMKind::Wasmtime
22    }
23
24    #[cfg(all(not(feature = "wasmer_default"), not(feature = "wasmtime_default")))]
25    fn default() -> Self {
26        VMKind::Wasmer
27    }
28}