use std::{ collections::BTreeMap, time::{SystemTime, UNIX_EPOCH}, }; use smol_str::SmolStr; use crate::{ value::{Builtin, NixString}, Value, }; fn impure_builtins() -> Vec { vec![] } /// Return all impure builtins, that is all builtins which may perform I/O outside of the VM and so /// cannot be used in all contexts (e.g. WASM). pub(super) fn builtins() -> BTreeMap { let mut map: BTreeMap = impure_builtins() .into_iter() .map(|b| (b.name().into(), Value::Builtin(b))) .collect(); map }