pub enum FindResult<'a, E, P: 'a> {
Perfect(&'a P),
Excluded(&'a P, Vec<E>),
NotFound,
}
Expand description
The result of SubsetMap::find
.
It can either be a perfect match on the subset or a match where some elements of the input set had to be excluded.
For FindResult::NotFound
no tracking of
excluded elements is done.
Variants§
Perfect(&'a P)
The input set exactly matched a combination of the original set and there was a payload.
Excluded(&'a P, Vec<E>)
There were some elements in the input set that had to be excluded to match a subset of the original set.
Still there was a payload at the given position.
The excluded elements are returned.
NotFound
There was no match at all or the payload
for the matched subset was None
Implementations§
Source§impl<'a, E, P> FindResult<'a, E, P>
impl<'a, E, P> FindResult<'a, E, P>
pub fn payload(&self) -> Option<&P>
Sourcepub fn excluded_elements(&self) -> &[E]
pub fn excluded_elements(&self) -> &[E]
Returns the excluded elements if there was a match at all.
If there was no match the returned slice is also empty.
Sourcepub fn is_found_and_perfect(&self) -> bool
pub fn is_found_and_perfect(&self) -> bool
Returns true
if there was a perfect match
Sourcepub fn is_found_and_excluded(&self) -> bool
pub fn is_found_and_excluded(&self) -> bool
Returns true
if there was a match
but some elements had to be excluded
Sourcepub fn is_not_found(&self) -> bool
pub fn is_not_found(&self) -> bool
Returns true
if there was no match
or if the payload for the matched subset was
None