pub enum Value {
Null,
Bool(bool),
Text(String),
Number(Number),
Array(Vec<Value>),
Record(BTreeMap<String, Value>),
Quantity {
value: Box<Value>,
dimension: Dimension,
},
Money {
amount: Box<Value>,
currency: String,
},
Matrix {
rows: u32,
cols: u32,
data: Vec<Value>,
},
Bound(Bound),
}Expand description
The recursive wire value.
Variants§
Null
Bool(bool)
Text(String)
Number(Number)
Array(Vec<Value>)
Record(BTreeMap<String, Value>)
Quantity
Money
Matrix
Bound(Bound)
Implementations§
Source§impl Value
impl Value
pub fn number(number: Number) -> Value
pub fn decimal(decimal: Decimal) -> Value
pub fn integer(value: BigInt) -> Value
pub fn text(value: impl Into<String>) -> Value
pub fn record( entries: impl IntoIterator<Item = (impl Into<String>, Value)>, ) -> Value
pub fn kind_name(&self) -> &'static str
pub fn is_null(&self) -> bool
pub fn as_number(&self) -> Result<&Number, EngineError>
pub fn as_array(&self) -> Result<&[Value], EngineError>
pub fn as_record(&self) -> Result<&BTreeMap<String, Value>, EngineError>
pub fn as_text(&self) -> Result<&str, EngineError>
pub fn as_bool(&self) -> Result<bool, EngineError>
pub fn as_money(&self) -> Result<(&Number, &str), EngineError>
pub fn as_quantity(&self) -> Result<(&Number, Dimension), EngineError>
Sourcepub fn check_limits(
&self,
limits: &Limits,
depth: usize,
) -> Result<(), EngineError>
pub fn check_limits( &self, limits: &Limits, depth: usize, ) -> Result<(), EngineError>
Check structural depth and basic size limits.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Value
impl<'de> Deserialize<'de> for Value
Source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
Deserialize this value from the given Serde deserializer. Read more
impl StructuralPartialEq for Value
Auto Trait Implementations§
impl Freeze for Value
impl RefUnwindSafe for Value
impl Send for Value
impl Sync for Value
impl Unpin for Value
impl UnsafeUnpin for Value
impl UnwindSafe for Value
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more