pub enum Ty {
Empty,
Literal(TyLit),
Named(String),
Parameterized(Box<Ty>, Box<Ty>),
AnyOf(Vec<Ty>),
Function(TyFunc),
Table(Frame),
Infer,
}
Variants§
Empty
Literal(TyLit)
Named(String)
Parameterized(Box<Ty>, Box<Ty>)
AnyOf(Vec<Ty>)
Function(TyFunc)
Table(Frame)
Infer
Means that we have no information about the type of the variable and that it should be inferred from other usages.
Implementations§
source§impl Ty
impl Ty
sourcepub fn as_literal_mut(&mut self) -> Option<&mut TyLit>
pub fn as_literal_mut(&mut self) -> Option<&mut TyLit>
Optionally returns mutable references to the inner fields if this is a Ty::Literal
, otherwise None
sourcepub fn as_literal(&self) -> Option<&TyLit>
pub fn as_literal(&self) -> Option<&TyLit>
Optionally returns references to the inner fields if this is a Ty::Literal
, otherwise None
sourcepub fn into_literal(self) -> Result<TyLit, Self>
pub fn into_literal(self) -> Result<TyLit, Self>
Returns the inner fields if this is a Ty::Literal
, otherwise returns back the enum in the Err
case of the result
sourcepub fn as_named_mut(&mut self) -> Option<&mut String>
pub fn as_named_mut(&mut self) -> Option<&mut String>
Optionally returns mutable references to the inner fields if this is a Ty::Named
, otherwise None
sourcepub fn as_named(&self) -> Option<&String>
pub fn as_named(&self) -> Option<&String>
Optionally returns references to the inner fields if this is a Ty::Named
, otherwise None
sourcepub fn into_named(self) -> Result<String, Self>
pub fn into_named(self) -> Result<String, Self>
Returns the inner fields if this is a Ty::Named
, otherwise returns back the enum in the Err
case of the result
sourcepub fn as_parameterized_mut(&mut self) -> Option<(&mut Box<Ty>, &mut Box<Ty>)>
pub fn as_parameterized_mut(&mut self) -> Option<(&mut Box<Ty>, &mut Box<Ty>)>
Optionally returns mutable references to the inner fields if this is a Ty::Parameterized
, otherwise None
sourcepub fn as_parameterized(&self) -> Option<(&Box<Ty>, &Box<Ty>)>
pub fn as_parameterized(&self) -> Option<(&Box<Ty>, &Box<Ty>)>
Optionally returns references to the inner fields if this is a Ty::Parameterized
, otherwise None
sourcepub fn into_parameterized(self) -> Result<(Box<Ty>, Box<Ty>), Self>
pub fn into_parameterized(self) -> Result<(Box<Ty>, Box<Ty>), Self>
Returns the inner fields if this is a Ty::Parameterized
, otherwise returns back the enum in the Err
case of the result
sourcepub fn as_any_of_mut(&mut self) -> Option<&mut Vec<Ty>>
pub fn as_any_of_mut(&mut self) -> Option<&mut Vec<Ty>>
Optionally returns mutable references to the inner fields if this is a Ty::AnyOf
, otherwise None
sourcepub fn as_any_of(&self) -> Option<&Vec<Ty>>
pub fn as_any_of(&self) -> Option<&Vec<Ty>>
Optionally returns references to the inner fields if this is a Ty::AnyOf
, otherwise None
sourcepub fn into_any_of(self) -> Result<Vec<Ty>, Self>
pub fn into_any_of(self) -> Result<Vec<Ty>, Self>
Returns the inner fields if this is a Ty::AnyOf
, otherwise returns back the enum in the Err
case of the result
sourcepub fn as_function_mut(&mut self) -> Option<&mut TyFunc>
pub fn as_function_mut(&mut self) -> Option<&mut TyFunc>
Optionally returns mutable references to the inner fields if this is a Ty::Function
, otherwise None
sourcepub fn as_function(&self) -> Option<&TyFunc>
pub fn as_function(&self) -> Option<&TyFunc>
Optionally returns references to the inner fields if this is a Ty::Function
, otherwise None
sourcepub fn into_function(self) -> Result<TyFunc, Self>
pub fn into_function(self) -> Result<TyFunc, Self>
Returns the inner fields if this is a Ty::Function
, otherwise returns back the enum in the Err
case of the result
sourcepub fn as_table_mut(&mut self) -> Option<&mut Frame>
pub fn as_table_mut(&mut self) -> Option<&mut Frame>
Optionally returns mutable references to the inner fields if this is a Ty::Table
, otherwise None
sourcepub fn as_table(&self) -> Option<&Frame>
pub fn as_table(&self) -> Option<&Frame>
Optionally returns references to the inner fields if this is a Ty::Table
, otherwise None
sourcepub fn into_table(self) -> Result<Frame, Self>
pub fn into_table(self) -> Result<Frame, Self>
Returns the inner fields if this is a Ty::Table
, otherwise returns back the enum in the Err
case of the result
Trait Implementations§
source§impl<'de> Deserialize<'de> for Ty
impl<'de> Deserialize<'de> for Ty
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>,
source§impl PartialOrd<Ty> for Ty
impl PartialOrd<Ty> for Ty
Implements a partial ordering or types:
- higher up are types that include many others (AnyOf, Any) and
- on the bottom are the atomic types (bool, string).
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self
and other
) and is used by the <=
operator. Read more