Struct erg_compiler::ty::RefinementType
source · pub struct RefinementType {
pub var: Str,
pub t: Box<Type>,
pub pred: Box<Predicate>,
}
Expand description
e.g.
{I: Int | I >= 0}
{_: StrWithLen N | N >= 0}
{T: (Int, Int) | T.0 >= 0, T.1 >= 0}
Fields§
§var: Str
§t: Box<Type>
§pred: Box<Predicate>
Implementations§
Trait Implementations§
source§impl Clone for RefinementType
impl Clone for RefinementType
source§fn clone(&self) -> RefinementType
fn clone(&self) -> RefinementType
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for RefinementType
impl Debug for RefinementType
source§impl Display for RefinementType
impl Display for RefinementType
source§impl From<RefinementType> for Type
impl From<RefinementType> for Type
source§fn from(refine: RefinementType) -> Self
fn from(refine: RefinementType) -> Self
Converts to this type from the input type.
source§impl Hash for RefinementType
impl Hash for RefinementType
source§impl LimitedDisplay for RefinementType
impl LimitedDisplay for RefinementType
source§impl PartialEq for RefinementType
impl PartialEq for RefinementType
source§fn eq(&self, other: &RefinementType) -> bool
fn eq(&self, other: &RefinementType) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.source§impl<'a> TryFrom<&'a Type> for &'a RefinementType
impl<'a> TryFrom<&'a Type> for &'a RefinementType
impl Eq for RefinementType
impl StructuralEq for RefinementType
impl StructuralPartialEq for RefinementType
Auto Trait Implementations§
impl RefUnwindSafe for RefinementType
impl Send for RefinementType
impl Sync for RefinementType
impl Unpin for RefinementType
impl UnwindSafe for RefinementType
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