von 0.0.0

Virtual Object Notation
Documentation
use bigdecimal::BigDecimal;
use indexmap::IndexMap;
use std::hash::{Hash, Hasher};
#[cfg(feature = "serde")]
mod der;
pub mod display;
mod number;
#[cfg(feature = "serde")]
mod ser;
mod table;

mod text;

#[derive(Clone, Hash, Eq, PartialEq)]
pub enum VonNode {
    Keyword(&'static str),
    Boolean(bool),
    Number(Number),
    Text(Text),
    Table(Table),
}

#[derive(Clone, Debug, Hash, Eq)]
pub struct Number {
    pub hint: String,
    pub value: BigDecimal,
}

#[derive(Clone, Debug, Hash, Eq)]
pub struct Text {
    pub hint: String,
    pub value: String,
}

#[derive(Clone, Debug, Eq)]
pub struct Table {
    pub hint: String,
    pub list: Vec<VonNode>,
    pub dict: IndexMap<String, VonNode>,
}