Skip to main content

GrepCommand

Struct GrepCommand 

Source
pub struct GrepCommand {
Show 19 fields pub executor: CommandExecutor, pub pattern: Option<String>, pub trees: Vec<String>, pub paths: Vec<String>, pub ignore_case: bool, pub word_regexp: bool, pub invert: bool, pub line_number: bool, pub count: bool, pub files_with_matches: bool, pub files_without_match: bool, pub name_only: bool, pub extended_regexp: bool, pub fixed_strings: bool, pub perl_regexp: bool, pub cached: bool, pub untracked: bool, pub no_index: bool, pub recurse_submodules: bool,
}
Expand description

Builder for git grep.

Fields§

§executor: CommandExecutor

Shared executor.

§pattern: Option<String>

Pattern to search for.

§trees: Vec<String>

Tree-ishes to search (defaults to working tree if empty).

§paths: Vec<String>

Pathspecs.

§ignore_case: bool

-i case-insensitive.

§word_regexp: bool

-w match whole word.

§invert: bool

-v invert match.

§line_number: bool

-n show line numbers.

§count: bool

-c count matches per file.

§files_with_matches: bool

-l / --files-with-matches.

§files_without_match: bool

-L / --files-without-match.

§name_only: bool

--name-only.

§extended_regexp: bool

-E extended regex.

§fixed_strings: bool

-F fixed string.

§perl_regexp: bool

-P Perl regex.

§cached: bool

--cached.

§untracked: bool

--untracked.

§no_index: bool

--no-index.

§recurse_submodules: bool

--recurse-submodules.

Implementations§

Source§

impl GrepCommand

Source

pub fn new(pattern: impl Into<String>) -> Self

New grep with the given pattern.

Source

pub fn tree(&mut self, t: impl Into<String>) -> &mut Self

Search a tree-ish (e.g. HEAD, a commit, a branch).

Source

pub fn path(&mut self, p: impl Into<String>) -> &mut Self

Filter by path.

Source

pub fn ignore_case(&mut self) -> &mut Self

-i.

Source

pub fn word_regexp(&mut self) -> &mut Self

-w.

Source

pub fn invert(&mut self) -> &mut Self

-v.

Source

pub fn line_number(&mut self) -> &mut Self

-n.

Source

pub fn count(&mut self) -> &mut Self

-c.

Source

pub fn files_with_matches(&mut self) -> &mut Self

-l.

Source

pub fn files_without_match(&mut self) -> &mut Self

-L.

Source

pub fn name_only(&mut self) -> &mut Self

--name-only.

Source

pub fn extended_regexp(&mut self) -> &mut Self

-E.

Source

pub fn fixed_strings(&mut self) -> &mut Self

-F.

Source

pub fn perl_regexp(&mut self) -> &mut Self

-P.

Source

pub fn cached(&mut self) -> &mut Self

--cached.

Source

pub fn untracked(&mut self) -> &mut Self

--untracked.

Source

pub fn no_index(&mut self) -> &mut Self

--no-index.

Source

pub fn recurse_submodules(&mut self) -> &mut Self

--recurse-submodules.

Trait Implementations§

Source§

impl Clone for GrepCommand

Source§

fn clone(&self) -> GrepCommand

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for GrepCommand

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for GrepCommand

Source§

fn default() -> GrepCommand

Returns the “default value” for a type. Read more
Source§

impl GitCommand for GrepCommand

Source§

type Output = CommandOutput

The typed output produced by this command.
Source§

fn get_executor(&self) -> &CommandExecutor

Borrow the shared executor.
Source§

fn get_executor_mut(&mut self) -> &mut CommandExecutor

Mutably borrow the shared executor.
Source§

fn build_command_args(&self) -> Vec<String>

Build the full argument vector (subcommand + flags + positionals) excluding the leading git program.
Source§

fn execute<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<CommandOutput>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Run the command and decode its output into Self::Output.
Source§

fn execute_raw<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<CommandOutput>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, 'life0: 'async_trait,

Spawn git with the given arguments and return the raw output. Read more
Source§

fn arg<S: AsRef<OsStr>>(&mut self, arg: S) -> &mut Self

Append a single raw argument.
Source§

fn args<I, S>(&mut self, args: I) -> &mut Self
where I: IntoIterator<Item = S>, S: AsRef<OsStr>,

Append several raw arguments.
Source§

fn flag(&mut self, flag: &str) -> &mut Self

Append a --flag (or -f if a single character).
Source§

fn option(&mut self, key: &str, value: &str) -> &mut Self

Append a --key value pair.
Source§

fn current_dir<P: Into<PathBuf>>(&mut self, dir: P) -> &mut Self

Run git in the given working directory.
Source§

fn env<K: Into<OsString>, V: Into<OsString>>( &mut self, key: K, value: V, ) -> &mut Self

Set an environment variable for this invocation.
Source§

fn with_timeout(&mut self, timeout: Duration) -> &mut Self

Cap execution time. On expiry the process is killed and Error::Timeout is returned.
Source§

fn with_timeout_secs(&mut self, seconds: u64) -> &mut Self

Convenience: set timeout in whole seconds.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more