GrabConfig

Struct GrabConfig 

Source
pub struct GrabConfig {
    pub target_path: PathBuf,
    pub add_headers: bool,
    pub exclude_patterns: Vec<String>,
    pub include_untracked: bool,
    pub include_default_output: bool,
    pub no_git: bool,
    pub include_tree: bool,
    pub convert_pdf: bool,
    pub all_repo: bool,
}
Expand description

Configuration for the dirgrab operation.

This struct holds all the settings needed to control how dirgrab finds and processes files within the specified target directory. It is typically constructed by the calling application (e.g., the CLI) based on user input.

Fields§

§target_path: PathBuf

The starting path for the operation (directory or Git repository). dirgrab will operate within this path. It will be canonicalized internally.

§add_headers: bool

If true, adds '--- FILE: <filename> ---' headers before each file’s content in the final output string. The filename displayed will be relative to the Git repository root (if applicable) or the target path.

§exclude_patterns: Vec<String>

A list of glob patterns (using .gitignore syntax) to exclude files or directories. These patterns are applied in addition to any .gitignore rules if operating in Git mode. In Git mode, they are passed to git ls-files as :!<pattern> pathspecs. In non-Git mode, they are used to filter the results from walking the directory.

§include_untracked: bool

If operating in Git mode, set this to true to include untracked files (files present in the working directory but not added to the index). This still respects .gitignore and the exclude_patterns. This setting has no effect if the target_path is not part of a Git repository, or if no_git is true.

§include_default_output: bool

If true, the default exclusion for dirgrab.txt will not be applied. Use this flag only if you specifically need to include a file named dirgrab.txt.

§no_git: bool

If true, forces dirgrab to ignore any Git repository context and treat the target path purely as a filesystem directory. This disables .gitignore processing and the effect of include_untracked. User-provided exclude patterns (-e) are still respected.

§include_tree: bool

If true, prepend an indented directory tree structure to the output, showing the files and directories included in the grab operation.

§convert_pdf: bool

If true, attempt to extract text content from PDF files.

§all_repo: bool

If true, operate on the entire Git repository even when the target path is a subdirectory.

Trait Implementations§

Source§

impl Clone for GrabConfig

Source§

fn clone(&self) -> GrabConfig

Returns a duplicate of the value. Read more
1.0.0 · Source§

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

Performs copy-assignment from source. Read more
Source§

impl Debug for GrabConfig

Source§

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

Formats the value using the given formatter. Read more

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, 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> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
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.