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.
SabreTools.IO.Extensions
This library contains IO-related extensions with some functionality locked behind .NET version support.
Relies on functionality found in SabreTools.IO.Matching, SabreTools.Numerics, and SabreTools.Text.Compare.
| Class | Description |
|---|---|
BinaryReaderExtensions |
Extensions to BinaryReader allowing for endian-specific reads, peeking functionality, and try-read functionality. |
BinaryWriterExtensions |
Extensions to BinaryWriter allowing for endian-specific writes. |
ByteArrayExtensions |
Utility byte[] and byte?[] extensions commonly used in SabreTools projects. |
ByteArrayReaderExtensions |
Extensions to byte[] allowing for endian-specific reads, peeking functionality, and try-read functionality, similar to a stream. |
ByteArrayWriterExtensions |
Extensions to byte[] allowing for endian-specific writes, similar to a stream. |
DateTimeExtensions |
DateTime conversion, specifically between standard and MS-DOS formats. |
DictionaryExtensions |
Utility Dictionary<string, List<string>> extensions commonly used in SabreTools projects. |
EnumerableExtensions |
Specialized enumeration wrapper functionality. |
IOExtensions |
Path, directory, and file extensions. |
MarshalHelpers |
Internal-only reflection-based extensions used by some other extension classes. |
NumericExtensions |
Common numeric type extensions allowing for endian-specific processing. |
ParentablePathExtensions |
Extensions to SabreTools.IO.ParentablePath for filtering. |
ReadOnlyBitStreamExtensions |
Extensions to SabreTools.IO.ReadOnlyBitStream to allow non-bitwise reads. |
StreamExtensions |
Utility Stream extensions commonly used in other SabreTools projects. |
StreamReaderExtensions |
Extensions to Stream allowing for endian-specific reads, peeking functionality, and try-read functionality. |
StreamWriterExtensions |
Extensions to Stream allowing for endian-specific writes. |
StringExtensions |
Optional overloads to string.Contains, string.EndsWith, string.Equals, and string.StartsWith. |
XmlTextWriterExtensions |
Overloads to XmlTextWriter.WriteAttributeString and XmlTextWriter.WriteElementString. |