use crate::ArrayRef;
pub trait Matcher {
type Match<'a>;
#[inline]
fn matches(array: &ArrayRef) -> bool {
Self::try_match(array).is_some()
}
fn try_match(array: &ArrayRef) -> Option<Self::Match<'_>>;
}
#[derive(Debug)]
pub struct AnyArray;
impl Matcher for AnyArray {
type Match<'a> = &'a ArrayRef;
#[allow(clippy::inline_always)]
#[inline(always)]
fn matches(_array: &ArrayRef) -> bool {
true
}
#[allow(clippy::inline_always)]
#[inline(always)]
fn try_match(array: &ArrayRef) -> Option<Self::Match<'_>> {
Some(array)
}
}