pub static ALL_WASI_VERSIONS: &[WasiVersion] = &[WasiVersion::Unstable, WasiVersion::Snapshot1]; pub static LATEST_WASI_VERSION: &[WasiVersion] = &[WasiVersion::get_latest()]; #[derive(Debug, Clone, Copy)] pub enum WasiVersion { /// A.K.A. Snapshot0 Unstable, Snapshot1, } impl WasiVersion { pub const fn get_latest() -> Self { Self::Snapshot1 } pub fn get_compiler_toolchain(&self) -> &'static str { match self { WasiVersion::Unstable => "nightly-2019-09-13", WasiVersion::Snapshot1 => "nightly-2019-12-18", } } pub fn get_directory_name(&self) -> &'static str { match self { WasiVersion::Unstable => "unstable", WasiVersion::Snapshot1 => "snapshot1", } } }