#[derive(Debug, Clone, PartialEq, Eq)]
pub enum Constraint<'a> {
Extension(&'a str),
Glob(&'a str),
Parts(&'a [&'a str]),
Text(&'a str),
Exclude(&'a [&'a str]),
PathSegment(&'a str),
FilePath(&'a str),
FileType(&'a str),
GitStatus(GitStatusFilter),
Not(Box<Constraint<'a>>),
}
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum GitStatusFilter {
Modified,
Untracked,
Staged,
Unmodified,
}
pub(crate) type TextPartsBuffer<'a> = Vec<&'a str>;