Trait sandkiste::types::MaybeOpaque
source · pub trait MaybeOpaquewhere
Self: TryInto<Self::Opaque, Error = DatumConversionFailure<Self>>,{
type Opaque: Clone + Eq + PartialEq + Hash;
type OpaqueRef<'a>: Deref<Target = Self::Opaque> + Borrow<Self::Opaque>
where Self: 'a;
// Required method
fn try_as_opaque(&self) -> Result<Self::OpaqueRef<'_>, TypeMismatch>;
// Provided methods
fn is_opaque(&self) -> bool { ... }
fn try_into_opaque(self) -> Result<Self::Opaque, TypeMismatch> { ... }
}
Expand description
Types that can be a reference to an opaque datum allowing comparison for equality and hashing
Required Associated Types§
sourcetype OpaqueRef<'a>: Deref<Target = Self::Opaque> + Borrow<Self::Opaque>
where
Self: 'a
type OpaqueRef<'a>: Deref<Target = Self::Opaque> + Borrow<Self::Opaque> where Self: 'a
Reference or smart pointer to MaybeOpaque::Opaque
as returned by
try_as_opaque
Required Methods§
sourcefn try_as_opaque(&self) -> Result<Self::OpaqueRef<'_>, TypeMismatch>
fn try_as_opaque(&self) -> Result<Self::OpaqueRef<'_>, TypeMismatch>
Try to interpret datum as reference to opaque datum
Provided Methods§
sourcefn try_into_opaque(self) -> Result<Self::Opaque, TypeMismatch>
fn try_into_opaque(self) -> Result<Self::Opaque, TypeMismatch>
Try to convert datum into opaque datum