pub enum Predicate<_Value: NestedValue = IOValue> {
Selector(Box<Selector<_Value>>),
Not {
pred: Box<Predicate<_Value>>,
},
Or {
preds: Vec<Predicate<_Value>>,
},
And {
preds: Vec<Predicate<_Value>>,
},
}Variants§
Implementations§
Source§impl Predicate
impl Predicate
pub fn compile(&self) -> Result<CompiledPredicate, CompilationError>
pub fn exec( &self, ctxt: &mut Context<'_>, value: &IOValue, ) -> Result<bool, CompilationError>
Trait Implementations§
Source§impl<_Value: NestedValue> Deserialize<_Value> for Predicate<_Value>
impl<_Value: NestedValue> Deserialize<_Value> for Predicate<_Value>
fn deserialize<'de, R: Reader<'de, _Value>>( r: &mut R, ) -> Result<Self, ParseError>
Source§impl<_Value: NestedValue> Domain for Predicate<_Value>
impl<_Value: NestedValue> Domain for Predicate<_Value>
Source§impl<_Value: Ord + NestedValue> Ord for Predicate<_Value>
impl<_Value: Ord + NestedValue> Ord for Predicate<_Value>
Source§impl<'a, _L: Copy + Into<&'a Language<_Value>>, _Value: NestedValue + 'a> Parse<_L, _Value> for Predicate<_Value>
impl<'a, _L: Copy + Into<&'a Language<_Value>>, _Value: NestedValue + 'a> Parse<_L, _Value> for Predicate<_Value>
Source§impl<_Value: PartialOrd + NestedValue> PartialOrd for Predicate<_Value>
impl<_Value: PartialOrd + NestedValue> PartialOrd for Predicate<_Value>
Source§impl<'a, _L: Copy + Into<&'a Language<_Value>>, _Value: NestedValue + 'a> Unparse<_L, _Value> for Predicate<_Value>
impl<'a, _L: Copy + Into<&'a Language<_Value>>, _Value: NestedValue + 'a> Unparse<_L, _Value> for Predicate<_Value>
impl<_Value: Eq + NestedValue> Eq for Predicate<_Value>
impl<_Value: NestedValue> StructuralPartialEq for Predicate<_Value>
Auto Trait Implementations§
impl<_Value> Freeze for Predicate<_Value>
impl<_Value> RefUnwindSafe for Predicate<_Value>where
_Value: RefUnwindSafe,
impl<_Value> Send for Predicate<_Value>where
_Value: Send,
impl<_Value> Sync for Predicate<_Value>where
_Value: Sync,
impl<_Value> Unpin for Predicate<_Value>
impl<_Value> UnwindSafe for Predicate<_Value>where
_Value: UnwindSafe,
Blanket Implementations§
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
🔬This is a nightly-only experimental API. (
clone_to_uninit)