VFSConfiguration.md

January 20, 2026 · View on GitHub

Atypical.VirtualFileSystem.Core

Atypical.VirtualFileSystem.Core

VFSConfiguration Class

Configuration options for the Virtual File System.

public sealed record VFSConfiguration : System.IEquatable<Atypical.VirtualFileSystem.Core.VFSConfiguration>

Inheritance System.Object 🡒 VFSConfiguration

Implements System.IEquatable<VFSConfiguration>

Properties
CaseSensitiveGets or sets whether file and directory operations are case sensitive. Default is false (case insensitive).
DefaultGets the default VFS configuration.
EnableChangeHistoryGets or sets whether to enable change history tracking. Default is true.
EnableIndexCachingGets or sets whether to enable index caching for performance. Default is true.
EventsGets or sets event handling configuration.
MaxChangeHistorySizeGets or sets the maximum number of operations to keep in change history. Default is 1000. Set to 0 for unlimited (not recommended).
MaxFileSizeGets or sets the maximum file size in bytes for content operations. Default is 1MB. Set to 0 for unlimited.
MaxRecursionDepthGets or sets the maximum depth for recursive operations. Default is 100 to prevent infinite recursion.
NormalizePathsGets or sets whether to normalize paths automatically. Default is true.
PathComparisonGets or sets the string comparison type for path operations.
PathSeparatorsGets or sets custom path separators. Default uses forward slash.
ValidatePathsGets or sets whether to validate paths on creation. Default is true.
Methods
ForPerformance()Creates a new configuration optimized for performance.
ForSafety()Creates a new configuration optimized for safety and validation.
WithCaseInsensitivity()Creates a new configuration with case insensitivity.
WithCaseSensitivity()Creates a new configuration with case sensitivity enabled.
WithMaxFileSize(long)Creates a new configuration with custom maximum file size.
WithoutChangeHistory()Creates a new configuration with change history disabled.