use crate::ne_vec::NEVec;
use variant_count::VariantCount;
#[derive(Debug, Clone, PartialEq, VariantCount)]
pub enum IValue {
Boolean(bool),
S8(i8),
S16(i16),
S32(i32),
S64(i64),
U8(u8),
U16(u16),
U32(u32),
U64(u64),
F32(f32),
F64(f64),
String(String),
ByteArray(Vec<u8>),
Array(Vec<IValue>),
I32(i32),
I64(i64),
Record(NEVec<IValue>),
}
impl Default for IValue {
fn default() -> Self {
Self::I32(0)
}
}