Public static methods
IEnumerable<string> AllFilesMatching(string x)
Includes a single pattern and scans the files - !! x = AllFilesMatching x
DirectoryInfo baseDirectory(string value)
The base directory to scan. The default is the
current directory.
string cleanPath(string path)
Patterns can use either / \ as a directory separator.
cleanPath replaces both of these characters with Path.DirectorySeparatorChar
StringBuilder cleanPathBuilder(string path)
Patterns can use either / \ as a directory separator.
cleanPath replaces both of these characters with Path.DirectorySeparatorChar
string combinePath(string baseDirectory, string path)
Tuple<FSharpList<RegexEntry>, FSharpList<string>> convertPatterns(DirectoryInfo baseDir, FSharpList<string> patterns)
Parses specified search patterns for search directories and
corresponding regex patterns.
bool endsWithChar(string value, Char c)
Determines whether the last character of the given
matches the specified character.
bool endsWithSlash(string value)
Determines whether the last character of the given
matches Path.DirectorySeparatorChar.
string ensureEndsWithSlash(string value)
Ensures that the last character of the given
matches Path.DirectorySeparatorChar.
IEnumerable<string> Files(IEnumerable<string> baseDirs, FSharpList<string> includes, FSharpList<string> excludes)
Searches the directories recursively for files and directories matching
the search criteria.
bool isPathIncluded(string path, bool caseSensitive, CompareOptions compareOptions, FSharpList<string> includeNames, FSharpList<RegexEntry> includedPatterns, FSharpList<string> excludeNames, FSharpList<RegexEntry> excludedPatterns)
void Log(string message, IEnumerable<string> files)
Logs the given files with the message
Tuple<string, bool, bool, string> parseSearchDirectoryAndPattern(DirectoryInfo baseDir, string originalPattern)
Given a search pattern returns a search directory and an regex search pattern.
string regexPattern(string originalPattern)
Converts search pattern to a regular expression pattern.
IEnumerable<string> scanDirectory(bool caseSensitive, FSharpList<string> includeNames, FSharpList<RegexEntry> includePatterns, FSharpList<string> excludeNames, FSharpList<RegexEntry> excludePatterns, string path, bool recursivePattern)
Searches a directory recursively for files and directories matching
the search criteria.
bool testRegex(bool caseSensitive, string path, RegexEntry entry)
Public properties
Dictionary<string, Regex> cachedCaseInsensitiveRegexes get;
Dictionary<string, Regex> cachedCaseSensitiveRegexes get;
string DefaultBaseDir get;
The default base directory