pub enum ExprType {
Int,
Float,
Str,
Bool,
List,
Record,
Any,
}Expand description
Simple type classification for expressions.
This is a lightweight type system for the expression language,
independent of the GAT type system in panproto-gat. Used for
type inference and coercion validation within expressions.
Variants§
Int
64-bit signed integer.
Float
64-bit IEEE 754 float.
Str
UTF-8 string.
Bool
Boolean.
List
Homogeneous list.
Record
Record (ordered map of fields to values).
Any
Unknown or polymorphic type.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for ExprType
impl<'de> Deserialize<'de> for ExprType
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Copy for ExprType
impl Eq for ExprType
impl StructuralPartialEq for ExprType
Auto Trait Implementations§
impl Freeze for ExprType
impl RefUnwindSafe for ExprType
impl Send for ExprType
impl Sync for ExprType
impl Unpin for ExprType
impl UnsafeUnpin for ExprType
impl UnwindSafe for ExprType
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