momba_explore/model/
types.rs

1//! Data structures for representing types.
2
3use serde::{Deserialize, Serialize};
4
5/// Possible data types of MombaIR values.
6#[derive(Serialize, Deserialize, Eq, PartialEq, Hash, Clone, Debug)]
7#[serde(rename_all = "SCREAMING_SNAKE_CASE", tag = "type")]
8pub enum Type {
9    /// A 64-bit signed integer.
10    Int64,
11    /// A double-precision IEEE 754 non-NaN float.
12    Float64,
13    /// A boolean.
14    Bool,
15    /// A vector/array of values.
16    Vector {
17        /// The type of the elements of the vector.
18        element_type: Box<Type>,
19    },
20    /// Indicates that the type is unknown.
21    Unknown,
22}