pub struct OpenOptions {
pub batch_size: usize,
pub follow_symlinks: bool,
pub one_filesystem: bool,
pub hidden: Option<Arc<HiddenPolicy>>,
pub exclude_special: bool,
pub types: Option<Arc<TypeRegistry>>,
pub budget: DiscoveryBudget,
pub observation: Option<WatchConfig>,
pub journal_capacity_bytes: usize,
pub control_limits: ControlLimits,
}Expand description
Configuration for a long-lived OpenedIndex.
Scope and execution settings are flat here because each is one independent decision; display depth is absent by design and belongs to a read request. The options bind progressive discovery, exact-history bounds, and optional live observation without changing the one-shot API.
Fields§
§batch_size: usizeOps per committed discovery batch.
follow_symlinks: boolFollow directory symlinks when the configured platform semantics support it.
one_filesystem: boolStay on the filesystem containing the opened root.
Hidden-component admission, or None to retain every component.
exclude_special: boolExclude objects other than files, directories, and symlinks.
types: Option<Arc<TypeRegistry>>File-type rules, or None for the rules compiled into fdu.
budget: DiscoveryBudgetResource policy for the cold progressive walk.
observation: Option<WatchConfig>Optional filesystem observation captured before cold discovery begins.
journal_capacity_bytes: usizeApproximate bytes the exact commit journal may retain, as
crate::Commit::retained_cost estimates them; see
crate::DEFAULT_JOURNAL_CAPACITY_BYTES for the default and why there is no
unbounded setting. OpenedIndex::open refuses a budget below
crate::MIN_JOURNAL_CAPACITY_BYTES with Error::JournalCapacityTooSmall.
control_limits: ControlLimitsThe budget and the line limit .gitignore files are applied under. See
ScanConfig::control_limits: a refused file ends nothing, and
crate::ReadDiagnostics::controls names it and the limit that fired.