use serde::Deserialize;
#[derive(Debug, Clone, Default, Deserialize)]
#[serde(deny_unknown_fields)]
pub struct IsaConfig {
#[serde(default)]
pub vector: VectorIsa,
#[serde(default)]
pub svadu: bool,
}
#[derive(Debug, Clone, Deserialize)]
#[serde(deny_unknown_fields)]
pub struct VectorIsa {
#[serde(default = "VectorIsa::default_elen")]
pub elen: usize,
#[serde(default = "VectorIsa::default_zvfh")]
pub zvfh: bool,
}
impl VectorIsa {
const fn default_elen() -> usize {
64
}
const fn default_zvfh() -> bool {
true
}
}
impl Default for VectorIsa {
fn default() -> Self {
Self { elen: Self::default_elen(), zvfh: Self::default_zvfh() }
}
}