pub struct FunctionSort { /* private fields */ }Implementations§
Trait Implementations§
Source§impl Debug for FunctionSort
impl Debug for FunctionSort
Source§impl Presort for FunctionSort
impl Presort for FunctionSort
Source§impl Sort for FunctionSort
impl Sort for FunctionSort
Source§fn column_ty(&self, _backend: &EGraph) -> ColumnTy
fn column_ty(&self, _backend: &EGraph) -> ColumnTy
Returns the backend-specific column type. See
ColumnTy.fn register_type(&self, backend: &mut EGraph)
fn as_arc_any(self: Arc<Self>) -> Arc<dyn Any + Send + Sync + 'static>
fn is_container_sort(&self) -> bool
fn is_eq_container_sort(&self) -> bool
Source§fn serialized_name(
&self,
container_values: &ContainerValues,
value: Value,
) -> String
fn serialized_name( &self, container_values: &ContainerValues, value: Value, ) -> String
Return the serialized name of the sort Read more
Source§fn inner_sorts(&self) -> Vec<ArcSort> ⓘ
fn inner_sorts(&self) -> Vec<ArcSort> ⓘ
return the inner sorts if a container sort
remember that containers can contain containers
and this only unfolds one level
Source§fn inner_values(
&self,
container_values: &ContainerValues,
value: Value,
) -> Vec<(ArcSort, Value)>
fn inner_values( &self, container_values: &ContainerValues, value: Value, ) -> Vec<(ArcSort, Value)>
Return the inner values and sorts.
Only container sort need to implement this method,
fn register_primitives(self: Arc<Self>, eg: &mut EGraph)
Source§fn value_type(&self) -> Option<TypeId>
fn value_type(&self) -> Option<TypeId>
Return the type id of values that this sort represents. Read more
Source§fn reconstruct_termdag_container(
&self,
container_values: &ContainerValues,
value: Value,
termdag: &mut TermDag,
element_terms: Vec<Term>,
) -> Term
fn reconstruct_termdag_container( &self, container_values: &ContainerValues, value: Value, termdag: &mut TermDag, element_terms: Vec<Term>, ) -> Term
Reconstruct a container value in a TermDag
fn is_eq_sort(&self) -> bool
Source§fn reconstruct_termdag_base(
&self,
base_values: &BaseValues,
value: Value,
termdag: &mut TermDag,
) -> Term
fn reconstruct_termdag_base( &self, base_values: &BaseValues, value: Value, termdag: &mut TermDag, ) -> Term
Reconstruct a leaf primitive value in a TermDag
Auto Trait Implementations§
impl Freeze for FunctionSort
impl !RefUnwindSafe for FunctionSort
impl Send for FunctionSort
impl Sync for FunctionSort
impl Unpin for FunctionSort
impl !UnwindSafe for FunctionSort
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
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more