pub struct ParseOptions {
pub max_concurrent_files: usize,
pub include_hidden_files: bool,
pub max_file_size_mb: usize,
pub recursive: bool,
pub ignore_patterns: Vec<String>,
pub language_detection: LanguageDetection,
pub enable_caching: bool,
pub thread_pool_size: Option<usize>,
}
Expand description
Configuration options for parsing operations
This struct provides extensive configuration options for controlling how files are parsed, including concurrency settings, file size limits, and language detection strategies.
§Examples
use tree_parser::{ParseOptions, LanguageDetection};
// Use default options
let options = ParseOptions::default();
// Custom configuration
let options = ParseOptions {
max_concurrent_files: 8,
include_hidden_files: false,
max_file_size_mb: 5,
recursive: true,
ignore_patterns: vec!["target".to_string(), "node_modules".to_string()],
language_detection: LanguageDetection::Combined,
enable_caching: true,
thread_pool_size: Some(4),
};
Fields§
§max_concurrent_files: usize
Maximum number of files to parse concurrently (default: 2 * CPU cores)
Whether to include hidden files (files starting with ‘.’) in parsing
max_file_size_mb: usize
Maximum file size in megabytes to parse (larger files are skipped)
recursive: bool
Whether to recursively parse subdirectories
ignore_patterns: Vec<String>
Patterns to ignore during directory traversal (supports glob patterns)
language_detection: LanguageDetection
Strategy for detecting the programming language of files
enable_caching: bool
Whether to enable internal caching for improved performance
thread_pool_size: Option<usize>
Optional thread pool size (None uses system default)
Trait Implementations§
Source§impl Clone for ParseOptions
impl Clone for ParseOptions
Source§fn clone(&self) -> ParseOptions
fn clone(&self) -> ParseOptions
Returns a duplicate of the value. Read more
1.0.0 · Source§const fn clone_from(&mut self, source: &Self)
const fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for ParseOptions
impl Debug for ParseOptions
Source§impl Default for ParseOptions
impl Default for ParseOptions
Source§impl<'de> Deserialize<'de> for ParseOptions
impl<'de> Deserialize<'de> for ParseOptions
Source§fn 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
Auto Trait Implementations§
impl Freeze for ParseOptions
impl RefUnwindSafe for ParseOptions
impl Send for ParseOptions
impl Sync for ParseOptions
impl Unpin for ParseOptions
impl UnwindSafe for ParseOptions
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more