pub mod env;
pub mod fetch;
pub mod nerd;
pub mod strings;
use crate::error::{DogeError, DogeResult};
use crate::value::Value;
pub(crate) fn str_arg<'a>(module: &str, fname: &str, v: &'a Value) -> DogeResult<&'a str> {
match v {
Value::Str(s) => Ok(s),
_ => Err(DogeError::type_error(format!(
"{module}.{fname} needs a Str, got {}",
v.describe()
))),
}
}