pub fn to_predicate(self) -> Result<Predicate, VMError> {
        match self {
            Data::Opaque(data) => {
                let point = SliceReader::parse(&data, |r| r.read_point())?;
                Ok(Predicate::Opaque(point))
            }
            Data::Predicate(p) => Ok(*p),
            _ => Err(VMError::TypeNotPredicate),
        }
    }
/// Downcast the data item to a `Predicate` type.
Downcast the data item to a `Predicate` type.
Downcast the data item to a ` Predicate ` type .
pub fn to_predicate(self) -> Result<Predicate, VMError> {
        match self {
            Data::Opaque(data) => {
                let point = SliceReader::parse(&data, |r| r.read_point())?;
                Ok(Predicate::Opaque(point))
            }
            Data::Predicate(p) => Ok(*p),
            _ => Err(VMError::TypeNotPredicate),
        }
    }
pub fn to_predicate ( self ) -> Result < Predicate , VMError > { match self { Data :: Opaque ( data ) => { let point = SliceReader :: parse ( & data , | r | r . read_point ( ) ) ? ; Ok ( Predicate :: Opaque ( point ) ) } Data :: Predicate ( p ) => Ok ( * p ) , _ => Err ( VMError :: TypeNotPredicate ) , } }
Downcast the data item to a `Predicate` type.
Downcast the data item to a ` Predicate ` type .
self
self