mirror of
https://github.com/SabreTools/SabreTools.IO.git
synced 2026-07-08 17:57:02 +00:00
This change looks dramatic, but it's just separating out the already-split namespaces into separate top-level folders. In theory, every single one could be built into their own Nuget package. `SabreTools.IO.Meta` builds the normal Nuget package that is used by all other projects and includes all namespaces. `SabreTools.IO` builds to `SabreTools.IO.Common` to avoid overwriting issues on publish.
1.0 KiB
1.0 KiB
SabreTools.Matching
This library contains classes designed to make matching contents and paths easier. These classes allow for both grouped and single matching as well as post-processing of matched information.
Interfaces
| Interface | Notes |
|---|---|
IMatch<T> |
Represents a matcher for a generic type |
IMatchSet<T, U> |
Represents a set of IMatch<T> types |
Matching Classes
| Class | Implements | Notes |
|---|---|---|
ContentMatch |
IMatch<byte?[]> |
Matches contents of a byte array, allowing wildcard bytes using null |
ContentMatchSet |
IMatchSet<ContentMatch, byte?[]> |
Group of logically-linked ContentMatch |
FilePathMatch |
IMatch<string> |
Specialization of PathMatch that assumes the string is a filename |
MatchUtil |
N/A | Utility class for easier invocation of SabreTools.Matching functionality |
PathMatch |
IMatch<string> |
Matches a set of strings representing a directory hierarchy |
PathMatchSet |
IMatchSet<PathMatch, string> |
Group of logically-linked PathMatch |