Expand description
A glob pattern optimized for matching paths relative to a root directory.
For normal globbing, use wildmatch()
instead.
Fields
text: BString
the actual pattern bytes
mode: Mode
Additional information to help accelerate pattern matching.
first_wildcard_pos: Option<usize>
The position in text
with the first wildcard character, or None
if there is no wildcard at all.
Implementations
sourceimpl Pattern
impl Pattern
sourcepub fn from_bytes(text: &[u8]) -> Option<Self>
pub fn from_bytes(text: &[u8]) -> Option<Self>
Parse the given text
as pattern, or return None
if text
was empty.
sourcepub fn is_negative(&self) -> bool
pub fn is_negative(&self) -> bool
Return true if a match is negated.
sourcepub fn matches_repo_relative_path<'a>(
&self,
path: impl Into<&'a BStr>,
basename_start_pos: Option<usize>,
is_dir: Option<bool>,
case: Case
) -> bool
pub fn matches_repo_relative_path<'a>(
&self,
path: impl Into<&'a BStr>,
basename_start_pos: Option<usize>,
is_dir: Option<bool>,
case: Case
) -> bool
Match the given path
which takes slashes (and only slashes) literally, and is relative to the repository root.
Note that path
is assumed to be relative to the repository.
We may take various shortcuts which is when basename_start_pos
and is_dir
come into play.
basename_start_pos
is the index at which the path
’s basename starts.
Lastly, case
folding can be configured as well.
Trait Implementations
sourceimpl<'de> Deserialize<'de> for Pattern
impl<'de> Deserialize<'de> for Pattern
sourcefn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
sourceimpl Ord for Pattern
impl Ord for Pattern
sourceimpl PartialOrd<Pattern> for Pattern
impl PartialOrd<Pattern> for Pattern
sourcefn partial_cmp(&self, other: &Pattern) -> Option<Ordering>
fn partial_cmp(&self, other: &Pattern) -> Option<Ordering>
This method returns an ordering between self
and other
values if one exists. Read more
1.0.0 · sourcefn lt(&self, other: &Rhs) -> bool
fn lt(&self, other: &Rhs) -> bool
This method tests less than (for self
and other
) and is used by the <
operator. Read more
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
impl Eq for Pattern
impl StructuralEq for Pattern
impl StructuralPartialEq for Pattern
Auto Trait Implementations
impl RefUnwindSafe for Pattern
impl Send for Pattern
impl Sync for Pattern
impl Unpin for Pattern
impl UnwindSafe for Pattern
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more