1use std::marker::PhantomData; 2use crate::*; 3 4pub struct EqTo<T: Value>(PhantomData<T>); 5 6impl<T: Eq, I: Value<Type=T>> Value for EqTo<I> { 7 type Type = Lambda<T, Bool>; 8} 9 10pub trait Eq: Type {}