diff --git a/SabreTools.IO.Test/Compression/BZip2Tests.cs b/SabreTools.IO.Compression.Test/BZip2Tests.cs similarity index 100% rename from SabreTools.IO.Test/Compression/BZip2Tests.cs rename to SabreTools.IO.Compression.Test/BZip2Tests.cs diff --git a/SabreTools.IO.Test/Compression/BlastTests.cs b/SabreTools.IO.Compression.Test/BlastTests.cs similarity index 100% rename from SabreTools.IO.Test/Compression/BlastTests.cs rename to SabreTools.IO.Compression.Test/BlastTests.cs diff --git a/SabreTools.IO.Test/Compression/MSZIPTests.cs b/SabreTools.IO.Compression.Test/MSZIPTests.cs similarity index 100% rename from SabreTools.IO.Test/Compression/MSZIPTests.cs rename to SabreTools.IO.Compression.Test/MSZIPTests.cs diff --git a/SabreTools.IO.Test/Compression/QuantumTests.cs b/SabreTools.IO.Compression.Test/QuantumTests.cs similarity index 100% rename from SabreTools.IO.Test/Compression/QuantumTests.cs rename to SabreTools.IO.Compression.Test/QuantumTests.cs diff --git a/SabreTools.IO.Compression.Test/SabreTools.IO.Compression.Test.csproj b/SabreTools.IO.Compression.Test/SabreTools.IO.Compression.Test.csproj new file mode 100644 index 0000000..5d7054b --- /dev/null +++ b/SabreTools.IO.Compression.Test/SabreTools.IO.Compression.Test.csproj @@ -0,0 +1,39 @@ + + + + net8.0;net9.0;net10.0 + false + latest + enable + true + CS0618 + + + + + + + + + Always + + + + + + runtime; build; native; contentfiles; analyzers; buildtransitive + all + + + + + runtime; build; native; contentfiles; analyzers; buildtransitive + all + + + + + + + + \ No newline at end of file diff --git a/SabreTools.IO.Compression.Test/TestData/Subdirectory/sample.txt b/SabreTools.IO.Compression.Test/TestData/Subdirectory/sample.txt new file mode 100644 index 0000000..04277a8 --- /dev/null +++ b/SabreTools.IO.Compression.Test/TestData/Subdirectory/sample.txt @@ -0,0 +1 @@ +Sample file for subdirectories \ No newline at end of file diff --git a/SabreTools.IO.Compression.Test/TestData/ascii.txt b/SabreTools.IO.Compression.Test/TestData/ascii.txt new file mode 100644 index 0000000..690eb15 --- /dev/null +++ b/SabreTools.IO.Compression.Test/TestData/ascii.txt @@ -0,0 +1 @@ +This doesn't match anything \ No newline at end of file diff --git a/SabreTools.IO.Compression.Test/TestData/file-to-compress.bin b/SabreTools.IO.Compression.Test/TestData/file-to-compress.bin new file mode 100644 index 0000000..7724139 --- /dev/null +++ b/SabreTools.IO.Compression.Test/TestData/file-to-compress.bin @@ -0,0 +1 @@ +This is just a file that has a known set of hashes to make sure that everything with hashing is still working as anticipated. \ No newline at end of file diff --git a/SabreTools.IO.Compression.Test/TestData/test-archive.bz2 b/SabreTools.IO.Compression.Test/TestData/test-archive.bz2 new file mode 100644 index 0000000..6d498cc Binary files /dev/null and b/SabreTools.IO.Compression.Test/TestData/test-archive.bz2 differ diff --git a/SabreTools.IO.Compression.Test/TestData/test-archive.msz b/SabreTools.IO.Compression.Test/TestData/test-archive.msz new file mode 100644 index 0000000..d8b0984 Binary files /dev/null and b/SabreTools.IO.Compression.Test/TestData/test-archive.msz differ diff --git a/SabreTools.IO.Compression.Test/TestData/test-archive.pk b/SabreTools.IO.Compression.Test/TestData/test-archive.pk new file mode 100644 index 0000000..be10b2b Binary files /dev/null and b/SabreTools.IO.Compression.Test/TestData/test-archive.pk differ diff --git a/SabreTools.IO.Compression.Test/TestData/test-archive.qtm b/SabreTools.IO.Compression.Test/TestData/test-archive.qtm new file mode 100644 index 0000000..474d211 Binary files /dev/null and b/SabreTools.IO.Compression.Test/TestData/test-archive.qtm differ diff --git a/SabreTools.IO.Compression.Test/TestData/utf16bebom.txt b/SabreTools.IO.Compression.Test/TestData/utf16bebom.txt new file mode 100644 index 0000000..e2df5e2 --- /dev/null +++ b/SabreTools.IO.Compression.Test/TestData/utf16bebom.txt @@ -0,0 +1 @@ +þÿ \ No newline at end of file diff --git a/SabreTools.IO.Compression.Test/TestData/utf16lebom.txt b/SabreTools.IO.Compression.Test/TestData/utf16lebom.txt new file mode 100644 index 0000000..46b134b --- /dev/null +++ b/SabreTools.IO.Compression.Test/TestData/utf16lebom.txt @@ -0,0 +1 @@ +ÿþ \ No newline at end of file diff --git a/SabreTools.IO.Compression.Test/TestData/utf32bom.txt b/SabreTools.IO.Compression.Test/TestData/utf32bom.txt new file mode 100644 index 0000000..2fa7e8a Binary files /dev/null and b/SabreTools.IO.Compression.Test/TestData/utf32bom.txt differ diff --git a/SabreTools.IO.Compression.Test/TestData/utf7bom.txt b/SabreTools.IO.Compression.Test/TestData/utf7bom.txt new file mode 100644 index 0000000..cc1ade6 --- /dev/null +++ b/SabreTools.IO.Compression.Test/TestData/utf7bom.txt @@ -0,0 +1 @@ ++/v \ No newline at end of file diff --git a/SabreTools.IO.Compression.Test/TestData/utf8bom.txt b/SabreTools.IO.Compression.Test/TestData/utf8bom.txt new file mode 100644 index 0000000..5f28270 --- /dev/null +++ b/SabreTools.IO.Compression.Test/TestData/utf8bom.txt @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/SabreTools.IO/SabreTools.IO.Compression/BZip2/BZip2.cs b/SabreTools.IO.Compression/BZip2/BZip2.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/BZip2/BZip2.cs rename to SabreTools.IO.Compression/BZip2/BZip2.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/BZip2/BZip2Compressor.cs b/SabreTools.IO.Compression/BZip2/BZip2Compressor.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/BZip2/BZip2Compressor.cs rename to SabreTools.IO.Compression/BZip2/BZip2Compressor.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/BZip2/BZip2InputStream.cs b/SabreTools.IO.Compression/BZip2/BZip2InputStream.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/BZip2/BZip2InputStream.cs rename to SabreTools.IO.Compression/BZip2/BZip2InputStream.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/BZip2/BZip2OutputStream.cs b/SabreTools.IO.Compression/BZip2/BZip2OutputStream.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/BZip2/BZip2OutputStream.cs rename to SabreTools.IO.Compression/BZip2/BZip2OutputStream.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/BZip2/BitWriter.cs b/SabreTools.IO.Compression/BZip2/BitWriter.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/BZip2/BitWriter.cs rename to SabreTools.IO.Compression/BZip2/BitWriter.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/BZip2/CRC32.cs b/SabreTools.IO.Compression/BZip2/CRC32.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/BZip2/CRC32.cs rename to SabreTools.IO.Compression/BZip2/CRC32.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/BZip2/Rand.cs b/SabreTools.IO.Compression/BZip2/Rand.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/BZip2/Rand.cs rename to SabreTools.IO.Compression/BZip2/Rand.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Blast/Constants.cs b/SabreTools.IO.Compression/Blast/Constants.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Blast/Constants.cs rename to SabreTools.IO.Compression/Blast/Constants.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Blast/Decompressor.cs b/SabreTools.IO.Compression/Blast/Decompressor.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Blast/Decompressor.cs rename to SabreTools.IO.Compression/Blast/Decompressor.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Blast/Huffman.cs b/SabreTools.IO.Compression/Blast/Huffman.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Blast/Huffman.cs rename to SabreTools.IO.Compression/Blast/Huffman.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Blast/State.cs b/SabreTools.IO.Compression/Blast/State.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Blast/State.cs rename to SabreTools.IO.Compression/Blast/State.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Deflate/Adler.cs b/SabreTools.IO.Compression/Deflate/Adler.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Deflate/Adler.cs rename to SabreTools.IO.Compression/Deflate/Adler.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Deflate/BlockState.cs b/SabreTools.IO.Compression/Deflate/BlockState.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Deflate/BlockState.cs rename to SabreTools.IO.Compression/Deflate/BlockState.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Deflate/CRC32.cs b/SabreTools.IO.Compression/Deflate/CRC32.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Deflate/CRC32.cs rename to SabreTools.IO.Compression/Deflate/CRC32.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Deflate/CompressionLevel.cs b/SabreTools.IO.Compression/Deflate/CompressionLevel.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Deflate/CompressionLevel.cs rename to SabreTools.IO.Compression/Deflate/CompressionLevel.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Deflate/CompressionMode.cs b/SabreTools.IO.Compression/Deflate/CompressionMode.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Deflate/CompressionMode.cs rename to SabreTools.IO.Compression/Deflate/CompressionMode.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Deflate/CompressionStrategy.cs b/SabreTools.IO.Compression/Deflate/CompressionStrategy.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Deflate/CompressionStrategy.cs rename to SabreTools.IO.Compression/Deflate/CompressionStrategy.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Deflate/DeflateFlavor.cs b/SabreTools.IO.Compression/Deflate/DeflateFlavor.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Deflate/DeflateFlavor.cs rename to SabreTools.IO.Compression/Deflate/DeflateFlavor.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Deflate/DeflateInfo.cs b/SabreTools.IO.Compression/Deflate/DeflateInfo.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Deflate/DeflateInfo.cs rename to SabreTools.IO.Compression/Deflate/DeflateInfo.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Deflate/DeflateManager.cs b/SabreTools.IO.Compression/Deflate/DeflateManager.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Deflate/DeflateManager.cs rename to SabreTools.IO.Compression/Deflate/DeflateManager.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Deflate/DeflateStream.cs b/SabreTools.IO.Compression/Deflate/DeflateStream.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Deflate/DeflateStream.cs rename to SabreTools.IO.Compression/Deflate/DeflateStream.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Deflate/Enums.cs b/SabreTools.IO.Compression/Deflate/Enums.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Deflate/Enums.cs rename to SabreTools.IO.Compression/Deflate/Enums.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Deflate/FlushType.cs b/SabreTools.IO.Compression/Deflate/FlushType.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Deflate/FlushType.cs rename to SabreTools.IO.Compression/Deflate/FlushType.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Deflate/GZipStream.cs b/SabreTools.IO.Compression/Deflate/GZipStream.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Deflate/GZipStream.cs rename to SabreTools.IO.Compression/Deflate/GZipStream.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Deflate/InfTree.cs b/SabreTools.IO.Compression/Deflate/InfTree.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Deflate/InfTree.cs rename to SabreTools.IO.Compression/Deflate/InfTree.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Deflate/InflateBlocks.cs b/SabreTools.IO.Compression/Deflate/InflateBlocks.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Deflate/InflateBlocks.cs rename to SabreTools.IO.Compression/Deflate/InflateBlocks.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Deflate/InflateCodes.cs b/SabreTools.IO.Compression/Deflate/InflateCodes.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Deflate/InflateCodes.cs rename to SabreTools.IO.Compression/Deflate/InflateCodes.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Deflate/InflateManager.cs b/SabreTools.IO.Compression/Deflate/InflateManager.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Deflate/InflateManager.cs rename to SabreTools.IO.Compression/Deflate/InflateManager.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Deflate/InflateWrapper.cs b/SabreTools.IO.Compression/Deflate/InflateWrapper.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Deflate/InflateWrapper.cs rename to SabreTools.IO.Compression/Deflate/InflateWrapper.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Deflate/InternalConstants.cs b/SabreTools.IO.Compression/Deflate/InternalConstants.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Deflate/InternalConstants.cs rename to SabreTools.IO.Compression/Deflate/InternalConstants.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Deflate/InternalInflateConstants.cs b/SabreTools.IO.Compression/Deflate/InternalInflateConstants.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Deflate/InternalInflateConstants.cs rename to SabreTools.IO.Compression/Deflate/InternalInflateConstants.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Deflate/LICENSE.jzlib.txt b/SabreTools.IO.Compression/Deflate/LICENSE.jzlib.txt similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Deflate/LICENSE.jzlib.txt rename to SabreTools.IO.Compression/Deflate/LICENSE.jzlib.txt diff --git a/SabreTools.IO/SabreTools.IO.Compression/Deflate/License.zlib.txt b/SabreTools.IO.Compression/Deflate/License.zlib.txt similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Deflate/License.zlib.txt rename to SabreTools.IO.Compression/Deflate/License.zlib.txt diff --git a/SabreTools.IO/SabreTools.IO.Compression/Deflate/SharedUtils.cs b/SabreTools.IO.Compression/Deflate/SharedUtils.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Deflate/SharedUtils.cs rename to SabreTools.IO.Compression/Deflate/SharedUtils.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Deflate/StaticTree.cs b/SabreTools.IO.Compression/Deflate/StaticTree.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Deflate/StaticTree.cs rename to SabreTools.IO.Compression/Deflate/StaticTree.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Deflate/Tree.cs b/SabreTools.IO.Compression/Deflate/Tree.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Deflate/Tree.cs rename to SabreTools.IO.Compression/Deflate/Tree.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Deflate/WorkItem.cs b/SabreTools.IO.Compression/Deflate/WorkItem.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Deflate/WorkItem.cs rename to SabreTools.IO.Compression/Deflate/WorkItem.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Deflate/ZlibBaseStream.cs b/SabreTools.IO.Compression/Deflate/ZlibBaseStream.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Deflate/ZlibBaseStream.cs rename to SabreTools.IO.Compression/Deflate/ZlibBaseStream.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Deflate/ZlibCodec.cs b/SabreTools.IO.Compression/Deflate/ZlibCodec.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Deflate/ZlibCodec.cs rename to SabreTools.IO.Compression/Deflate/ZlibCodec.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Deflate/ZlibConstants.cs b/SabreTools.IO.Compression/Deflate/ZlibConstants.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Deflate/ZlibConstants.cs rename to SabreTools.IO.Compression/Deflate/ZlibConstants.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Deflate/ZlibException.cs b/SabreTools.IO.Compression/Deflate/ZlibException.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Deflate/ZlibException.cs rename to SabreTools.IO.Compression/Deflate/ZlibException.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Deflate/ZlibStream.cs b/SabreTools.IO.Compression/Deflate/ZlibStream.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Deflate/ZlibStream.cs rename to SabreTools.IO.Compression/Deflate/ZlibStream.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Deflate/ZlibStreamFlavor.cs b/SabreTools.IO.Compression/Deflate/ZlibStreamFlavor.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Deflate/ZlibStreamFlavor.cs rename to SabreTools.IO.Compression/Deflate/ZlibStreamFlavor.cs diff --git a/SabreTools.IO.Compression/ExtensionAttribute.cs b/SabreTools.IO.Compression/ExtensionAttribute.cs new file mode 100644 index 0000000..478ed8b --- /dev/null +++ b/SabreTools.IO.Compression/ExtensionAttribute.cs @@ -0,0 +1,9 @@ +#if NET20 + +namespace System.Runtime.CompilerServices +{ + [AttributeUsage(AttributeTargets.Assembly | AttributeTargets.Class | AttributeTargets.Method)] + internal sealed class ExtensionAttribute : Attribute { } +} + +#endif diff --git a/SabreTools.IO/SabreTools.IO.Compression/LZX/AlignedOffsetBlockData.cs b/SabreTools.IO.Compression/LZX/AlignedOffsetBlockData.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/LZX/AlignedOffsetBlockData.cs rename to SabreTools.IO.Compression/LZX/AlignedOffsetBlockData.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/LZX/Block.cs b/SabreTools.IO.Compression/LZX/Block.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/LZX/Block.cs rename to SabreTools.IO.Compression/LZX/Block.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/LZX/BlockData.cs b/SabreTools.IO.Compression/LZX/BlockData.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/LZX/BlockData.cs rename to SabreTools.IO.Compression/LZX/BlockData.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/LZX/BlockHeader.cs b/SabreTools.IO.Compression/LZX/BlockHeader.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/LZX/BlockHeader.cs rename to SabreTools.IO.Compression/LZX/BlockHeader.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/LZX/Chunk.cs b/SabreTools.IO.Compression/LZX/Chunk.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/LZX/Chunk.cs rename to SabreTools.IO.Compression/LZX/Chunk.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/LZX/ChunkHeader.cs b/SabreTools.IO.Compression/LZX/ChunkHeader.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/LZX/ChunkHeader.cs rename to SabreTools.IO.Compression/LZX/ChunkHeader.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/LZX/Constants.cs b/SabreTools.IO.Compression/LZX/Constants.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/LZX/Constants.cs rename to SabreTools.IO.Compression/LZX/Constants.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/LZX/Enums.cs b/SabreTools.IO.Compression/LZX/Enums.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/LZX/Enums.cs rename to SabreTools.IO.Compression/LZX/Enums.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/LZX/UncompressedBlockData.cs b/SabreTools.IO.Compression/LZX/UncompressedBlockData.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/LZX/UncompressedBlockData.cs rename to SabreTools.IO.Compression/LZX/UncompressedBlockData.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/LZX/VerbatimBlockData.cs b/SabreTools.IO.Compression/LZX/VerbatimBlockData.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/LZX/VerbatimBlockData.cs rename to SabreTools.IO.Compression/LZX/VerbatimBlockData.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/MSZIP/BlockHeader.cs b/SabreTools.IO.Compression/MSZIP/BlockHeader.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/MSZIP/BlockHeader.cs rename to SabreTools.IO.Compression/MSZIP/BlockHeader.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/MSZIP/Decompressor.cs b/SabreTools.IO.Compression/MSZIP/Decompressor.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/MSZIP/Decompressor.cs rename to SabreTools.IO.Compression/MSZIP/Decompressor.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Quantum/Constants.cs b/SabreTools.IO.Compression/Quantum/Constants.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Quantum/Constants.cs rename to SabreTools.IO.Compression/Quantum/Constants.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Quantum/Decompressor.cs b/SabreTools.IO.Compression/Quantum/Decompressor.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Quantum/Decompressor.cs rename to SabreTools.IO.Compression/Quantum/Decompressor.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Quantum/Enums.cs b/SabreTools.IO.Compression/Quantum/Enums.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Quantum/Enums.cs rename to SabreTools.IO.Compression/Quantum/Enums.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Quantum/Model.cs b/SabreTools.IO.Compression/Quantum/Model.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Quantum/Model.cs rename to SabreTools.IO.Compression/Quantum/Model.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/Quantum/ModelSymbol.cs b/SabreTools.IO.Compression/Quantum/ModelSymbol.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/Quantum/ModelSymbol.cs rename to SabreTools.IO.Compression/Quantum/ModelSymbol.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/README.MD b/SabreTools.IO.Compression/README.MD similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/README.MD rename to SabreTools.IO.Compression/README.MD diff --git a/SabreTools.IO/SabreTools.IO.Compression/SZDD/Decompressor.cs b/SabreTools.IO.Compression/SZDD/Decompressor.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/SZDD/Decompressor.cs rename to SabreTools.IO.Compression/SZDD/Decompressor.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/SZDD/Enums.cs b/SabreTools.IO.Compression/SZDD/Enums.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/SZDD/Enums.cs rename to SabreTools.IO.Compression/SZDD/Enums.cs diff --git a/SabreTools.IO.Compression/SabreTools.IO.Compression.csproj b/SabreTools.IO.Compression/SabreTools.IO.Compression.csproj new file mode 100644 index 0000000..380b0f7 --- /dev/null +++ b/SabreTools.IO.Compression/SabreTools.IO.Compression.csproj @@ -0,0 +1,41 @@ + + + + + net20;net35;net40;net452;net462;net472;net48;netcoreapp3.1;net5.0;net6.0;net7.0;net8.0;net9.0;net10.0;netstandard2.0;netstandard2.1 + true + true + latest + CS0618 + enable + true + snupkg + true + 1.9.1 + + + Matt Nadareski + Common IO utilities by other SabreTools projects + Copyright (c) Matt Nadareski 2019-2025 + https://github.com/SabreTools/ + README.md + https://github.com/SabreTools/SabreTools.IO + git + io reading writing ini csv ssv tsv + MIT + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/SabreTools.IO/SabreTools.IO.Compression/zlib/Hebron.Runtime/CRuntime.cs b/SabreTools.IO.Compression/zlib/Hebron.Runtime/CRuntime.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/zlib/Hebron.Runtime/CRuntime.cs rename to SabreTools.IO.Compression/zlib/Hebron.Runtime/CRuntime.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/zlib/Hebron.Runtime/MemoryStats.cs b/SabreTools.IO.Compression/zlib/Hebron.Runtime/MemoryStats.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/zlib/Hebron.Runtime/MemoryStats.cs rename to SabreTools.IO.Compression/zlib/Hebron.Runtime/MemoryStats.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/zlib/Hebron.Runtime/UnsafeArray1D.cs b/SabreTools.IO.Compression/zlib/Hebron.Runtime/UnsafeArray1D.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/zlib/Hebron.Runtime/UnsafeArray1D.cs rename to SabreTools.IO.Compression/zlib/Hebron.Runtime/UnsafeArray1D.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/zlib/Hebron.Runtime/UnsafeArray2D.cs b/SabreTools.IO.Compression/zlib/Hebron.Runtime/UnsafeArray2D.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/zlib/Hebron.Runtime/UnsafeArray2D.cs rename to SabreTools.IO.Compression/zlib/Hebron.Runtime/UnsafeArray2D.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/zlib/LICENSE b/SabreTools.IO.Compression/zlib/LICENSE similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/zlib/LICENSE rename to SabreTools.IO.Compression/zlib/LICENSE diff --git a/SabreTools.IO/SabreTools.IO.Compression/zlib/README.md b/SabreTools.IO.Compression/zlib/README.md similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/zlib/README.md rename to SabreTools.IO.Compression/zlib/README.md diff --git a/SabreTools.IO/SabreTools.IO.Compression/zlib/ZlibDeflateStream.cs b/SabreTools.IO.Compression/zlib/ZlibDeflateStream.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/zlib/ZlibDeflateStream.cs rename to SabreTools.IO.Compression/zlib/ZlibDeflateStream.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/zlib/ZlibInflateStream.cs b/SabreTools.IO.Compression/zlib/ZlibInflateStream.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/zlib/ZlibInflateStream.cs rename to SabreTools.IO.Compression/zlib/ZlibInflateStream.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/zlib/zlib.cs b/SabreTools.IO.Compression/zlib/zlib.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/zlib/zlib.cs rename to SabreTools.IO.Compression/zlib/zlib.cs diff --git a/SabreTools.IO/SabreTools.IO.Compression/zlib/zlibConst.cs b/SabreTools.IO.Compression/zlib/zlibConst.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Compression/zlib/zlibConst.cs rename to SabreTools.IO.Compression/zlib/zlibConst.cs diff --git a/SabreTools.IO.Test/Extensions/BinaryReaderExtensionsTests.cs b/SabreTools.IO.Extensions.Test/BinaryReaderExtensionsTests.cs similarity index 100% rename from SabreTools.IO.Test/Extensions/BinaryReaderExtensionsTests.cs rename to SabreTools.IO.Extensions.Test/BinaryReaderExtensionsTests.cs diff --git a/SabreTools.IO.Test/Extensions/BinaryWriterExtensionsTests.cs b/SabreTools.IO.Extensions.Test/BinaryWriterExtensionsTests.cs similarity index 100% rename from SabreTools.IO.Test/Extensions/BinaryWriterExtensionsTests.cs rename to SabreTools.IO.Extensions.Test/BinaryWriterExtensionsTests.cs diff --git a/SabreTools.IO.Test/Extensions/ByteArrayExtensionsTests.cs b/SabreTools.IO.Extensions.Test/ByteArrayExtensionsTests.cs similarity index 100% rename from SabreTools.IO.Test/Extensions/ByteArrayExtensionsTests.cs rename to SabreTools.IO.Extensions.Test/ByteArrayExtensionsTests.cs diff --git a/SabreTools.IO.Test/Extensions/ByteArrayReaderExtensionsTests.cs b/SabreTools.IO.Extensions.Test/ByteArrayReaderExtensionsTests.cs similarity index 100% rename from SabreTools.IO.Test/Extensions/ByteArrayReaderExtensionsTests.cs rename to SabreTools.IO.Extensions.Test/ByteArrayReaderExtensionsTests.cs diff --git a/SabreTools.IO.Test/Extensions/ByteArrayWriterExtensionsTests.cs b/SabreTools.IO.Extensions.Test/ByteArrayWriterExtensionsTests.cs similarity index 100% rename from SabreTools.IO.Test/Extensions/ByteArrayWriterExtensionsTests.cs rename to SabreTools.IO.Extensions.Test/ByteArrayWriterExtensionsTests.cs diff --git a/SabreTools.IO.Test/Extensions/DateTimeExtensionsTests.cs b/SabreTools.IO.Extensions.Test/DateTimeExtensionsTests.cs similarity index 100% rename from SabreTools.IO.Test/Extensions/DateTimeExtensionsTests.cs rename to SabreTools.IO.Extensions.Test/DateTimeExtensionsTests.cs diff --git a/SabreTools.IO.Test/Extensions/DictionaryExtensionsTests.cs b/SabreTools.IO.Extensions.Test/DictionaryExtensionsTests.cs similarity index 100% rename from SabreTools.IO.Test/Extensions/DictionaryExtensionsTests.cs rename to SabreTools.IO.Extensions.Test/DictionaryExtensionsTests.cs diff --git a/SabreTools.IO.Test/Extensions/EnumerableExtensionsTests.cs b/SabreTools.IO.Extensions.Test/EnumerableExtensionsTests.cs similarity index 100% rename from SabreTools.IO.Test/Extensions/EnumerableExtensionsTests.cs rename to SabreTools.IO.Extensions.Test/EnumerableExtensionsTests.cs diff --git a/SabreTools.IO.Test/Extensions/IOExtensionsTests.cs b/SabreTools.IO.Extensions.Test/IOExtensionsTests.cs similarity index 100% rename from SabreTools.IO.Test/Extensions/IOExtensionsTests.cs rename to SabreTools.IO.Extensions.Test/IOExtensionsTests.cs diff --git a/SabreTools.IO.Test/Extensions/ParentablePathExtensionsTests.cs b/SabreTools.IO.Extensions.Test/ParentablePathExtensionsTests.cs similarity index 100% rename from SabreTools.IO.Test/Extensions/ParentablePathExtensionsTests.cs rename to SabreTools.IO.Extensions.Test/ParentablePathExtensionsTests.cs diff --git a/SabreTools.IO.Test/Extensions/ReadOnlyBitStreamExtensionsTests.cs b/SabreTools.IO.Extensions.Test/ReadOnlyBitStreamExtensionsTests.cs similarity index 100% rename from SabreTools.IO.Test/Extensions/ReadOnlyBitStreamExtensionsTests.cs rename to SabreTools.IO.Extensions.Test/ReadOnlyBitStreamExtensionsTests.cs diff --git a/SabreTools.IO.Extensions.Test/SabreTools.IO.Extensions.Test.csproj b/SabreTools.IO.Extensions.Test/SabreTools.IO.Extensions.Test.csproj new file mode 100644 index 0000000..30a948e --- /dev/null +++ b/SabreTools.IO.Extensions.Test/SabreTools.IO.Extensions.Test.csproj @@ -0,0 +1,39 @@ + + + + net8.0;net9.0;net10.0 + false + latest + enable + true + CS0618 + + + + + + + + + Always + + + + + + runtime; build; native; contentfiles; analyzers; buildtransitive + all + + + + + runtime; build; native; contentfiles; analyzers; buildtransitive + all + + + + + + + + \ No newline at end of file diff --git a/SabreTools.IO.Test/Extensions/StreamExtensionsTests.cs b/SabreTools.IO.Extensions.Test/StreamExtensionsTests.cs similarity index 100% rename from SabreTools.IO.Test/Extensions/StreamExtensionsTests.cs rename to SabreTools.IO.Extensions.Test/StreamExtensionsTests.cs diff --git a/SabreTools.IO.Test/Extensions/StreamReaderExtensionsTests.cs b/SabreTools.IO.Extensions.Test/StreamReaderExtensionsTests.cs similarity index 100% rename from SabreTools.IO.Test/Extensions/StreamReaderExtensionsTests.cs rename to SabreTools.IO.Extensions.Test/StreamReaderExtensionsTests.cs diff --git a/SabreTools.IO.Test/Extensions/StreamWriterExtensionsTests.cs b/SabreTools.IO.Extensions.Test/StreamWriterExtensionsTests.cs similarity index 100% rename from SabreTools.IO.Test/Extensions/StreamWriterExtensionsTests.cs rename to SabreTools.IO.Extensions.Test/StreamWriterExtensionsTests.cs diff --git a/SabreTools.IO.Test/Extensions/StringExtensionsTests.cs b/SabreTools.IO.Extensions.Test/StringExtensionsTests.cs similarity index 100% rename from SabreTools.IO.Test/Extensions/StringExtensionsTests.cs rename to SabreTools.IO.Extensions.Test/StringExtensionsTests.cs diff --git a/SabreTools.IO.Extensions.Test/TestData/Subdirectory/sample.txt b/SabreTools.IO.Extensions.Test/TestData/Subdirectory/sample.txt new file mode 100644 index 0000000..04277a8 --- /dev/null +++ b/SabreTools.IO.Extensions.Test/TestData/Subdirectory/sample.txt @@ -0,0 +1 @@ +Sample file for subdirectories \ No newline at end of file diff --git a/SabreTools.IO.Extensions.Test/TestData/ascii.txt b/SabreTools.IO.Extensions.Test/TestData/ascii.txt new file mode 100644 index 0000000..690eb15 --- /dev/null +++ b/SabreTools.IO.Extensions.Test/TestData/ascii.txt @@ -0,0 +1 @@ +This doesn't match anything \ No newline at end of file diff --git a/SabreTools.IO.Extensions.Test/TestData/file-to-compress.bin b/SabreTools.IO.Extensions.Test/TestData/file-to-compress.bin new file mode 100644 index 0000000..7724139 --- /dev/null +++ b/SabreTools.IO.Extensions.Test/TestData/file-to-compress.bin @@ -0,0 +1 @@ +This is just a file that has a known set of hashes to make sure that everything with hashing is still working as anticipated. \ No newline at end of file diff --git a/SabreTools.IO.Extensions.Test/TestData/test-archive.bz2 b/SabreTools.IO.Extensions.Test/TestData/test-archive.bz2 new file mode 100644 index 0000000..6d498cc Binary files /dev/null and b/SabreTools.IO.Extensions.Test/TestData/test-archive.bz2 differ diff --git a/SabreTools.IO.Extensions.Test/TestData/test-archive.msz b/SabreTools.IO.Extensions.Test/TestData/test-archive.msz new file mode 100644 index 0000000..d8b0984 Binary files /dev/null and b/SabreTools.IO.Extensions.Test/TestData/test-archive.msz differ diff --git a/SabreTools.IO.Extensions.Test/TestData/test-archive.pk b/SabreTools.IO.Extensions.Test/TestData/test-archive.pk new file mode 100644 index 0000000..be10b2b Binary files /dev/null and b/SabreTools.IO.Extensions.Test/TestData/test-archive.pk differ diff --git a/SabreTools.IO.Extensions.Test/TestData/test-archive.qtm b/SabreTools.IO.Extensions.Test/TestData/test-archive.qtm new file mode 100644 index 0000000..474d211 Binary files /dev/null and b/SabreTools.IO.Extensions.Test/TestData/test-archive.qtm differ diff --git a/SabreTools.IO.Extensions.Test/TestData/utf16bebom.txt b/SabreTools.IO.Extensions.Test/TestData/utf16bebom.txt new file mode 100644 index 0000000..e2df5e2 --- /dev/null +++ b/SabreTools.IO.Extensions.Test/TestData/utf16bebom.txt @@ -0,0 +1 @@ +þÿ \ No newline at end of file diff --git a/SabreTools.IO.Extensions.Test/TestData/utf16lebom.txt b/SabreTools.IO.Extensions.Test/TestData/utf16lebom.txt new file mode 100644 index 0000000..46b134b --- /dev/null +++ b/SabreTools.IO.Extensions.Test/TestData/utf16lebom.txt @@ -0,0 +1 @@ +ÿþ \ No newline at end of file diff --git a/SabreTools.IO.Extensions.Test/TestData/utf32bom.txt b/SabreTools.IO.Extensions.Test/TestData/utf32bom.txt new file mode 100644 index 0000000..2fa7e8a Binary files /dev/null and b/SabreTools.IO.Extensions.Test/TestData/utf32bom.txt differ diff --git a/SabreTools.IO.Extensions.Test/TestData/utf7bom.txt b/SabreTools.IO.Extensions.Test/TestData/utf7bom.txt new file mode 100644 index 0000000..cc1ade6 --- /dev/null +++ b/SabreTools.IO.Extensions.Test/TestData/utf7bom.txt @@ -0,0 +1 @@ ++/v \ No newline at end of file diff --git a/SabreTools.IO.Extensions.Test/TestData/utf8bom.txt b/SabreTools.IO.Extensions.Test/TestData/utf8bom.txt new file mode 100644 index 0000000..5f28270 --- /dev/null +++ b/SabreTools.IO.Extensions.Test/TestData/utf8bom.txt @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/SabreTools.IO.Test/Extensions/TestEnum.cs b/SabreTools.IO.Extensions.Test/TestEnum.cs similarity index 100% rename from SabreTools.IO.Test/Extensions/TestEnum.cs rename to SabreTools.IO.Extensions.Test/TestEnum.cs diff --git a/SabreTools.IO.Test/Extensions/TestStructArrays.cs b/SabreTools.IO.Extensions.Test/TestStructArrays.cs similarity index 100% rename from SabreTools.IO.Test/Extensions/TestStructArrays.cs rename to SabreTools.IO.Extensions.Test/TestStructArrays.cs diff --git a/SabreTools.IO.Test/Extensions/TestStructExplicit.cs b/SabreTools.IO.Extensions.Test/TestStructExplicit.cs similarity index 100% rename from SabreTools.IO.Test/Extensions/TestStructExplicit.cs rename to SabreTools.IO.Extensions.Test/TestStructExplicit.cs diff --git a/SabreTools.IO.Test/Extensions/TestStructInheritance.cs b/SabreTools.IO.Extensions.Test/TestStructInheritance.cs similarity index 100% rename from SabreTools.IO.Test/Extensions/TestStructInheritance.cs rename to SabreTools.IO.Extensions.Test/TestStructInheritance.cs diff --git a/SabreTools.IO.Test/Extensions/TestStructSequential.cs b/SabreTools.IO.Extensions.Test/TestStructSequential.cs similarity index 100% rename from SabreTools.IO.Test/Extensions/TestStructSequential.cs rename to SabreTools.IO.Extensions.Test/TestStructSequential.cs diff --git a/SabreTools.IO.Test/Extensions/TestStructStrings.cs b/SabreTools.IO.Extensions.Test/TestStructStrings.cs similarity index 100% rename from SabreTools.IO.Test/Extensions/TestStructStrings.cs rename to SabreTools.IO.Extensions.Test/TestStructStrings.cs diff --git a/SabreTools.IO.Test/Extensions/XmlTextWriterExtensionsTests.cs b/SabreTools.IO.Extensions.Test/XmlTextWriterExtensionsTests.cs similarity index 100% rename from SabreTools.IO.Test/Extensions/XmlTextWriterExtensionsTests.cs rename to SabreTools.IO.Extensions.Test/XmlTextWriterExtensionsTests.cs diff --git a/SabreTools.IO/SabreTools.IO.Extensions/BinaryReaderExtensions.cs b/SabreTools.IO.Extensions/BinaryReaderExtensions.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Extensions/BinaryReaderExtensions.cs rename to SabreTools.IO.Extensions/BinaryReaderExtensions.cs diff --git a/SabreTools.IO/SabreTools.IO.Extensions/BinaryWriterExtensions.cs b/SabreTools.IO.Extensions/BinaryWriterExtensions.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Extensions/BinaryWriterExtensions.cs rename to SabreTools.IO.Extensions/BinaryWriterExtensions.cs diff --git a/SabreTools.IO/SabreTools.IO.Extensions/ByteArrayExtensions.cs b/SabreTools.IO.Extensions/ByteArrayExtensions.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Extensions/ByteArrayExtensions.cs rename to SabreTools.IO.Extensions/ByteArrayExtensions.cs diff --git a/SabreTools.IO/SabreTools.IO.Extensions/ByteArrayReaderExtensions.cs b/SabreTools.IO.Extensions/ByteArrayReaderExtensions.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Extensions/ByteArrayReaderExtensions.cs rename to SabreTools.IO.Extensions/ByteArrayReaderExtensions.cs diff --git a/SabreTools.IO/SabreTools.IO.Extensions/ByteArrayWriterExtensions.cs b/SabreTools.IO.Extensions/ByteArrayWriterExtensions.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Extensions/ByteArrayWriterExtensions.cs rename to SabreTools.IO.Extensions/ByteArrayWriterExtensions.cs diff --git a/SabreTools.IO/SabreTools.IO.Extensions/DateTimeExtensions.cs b/SabreTools.IO.Extensions/DateTimeExtensions.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Extensions/DateTimeExtensions.cs rename to SabreTools.IO.Extensions/DateTimeExtensions.cs diff --git a/SabreTools.IO/SabreTools.IO.Extensions/DictionaryExtensions.cs b/SabreTools.IO.Extensions/DictionaryExtensions.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Extensions/DictionaryExtensions.cs rename to SabreTools.IO.Extensions/DictionaryExtensions.cs diff --git a/SabreTools.IO/SabreTools.IO.Extensions/EnumerableExtensions.cs b/SabreTools.IO.Extensions/EnumerableExtensions.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Extensions/EnumerableExtensions.cs rename to SabreTools.IO.Extensions/EnumerableExtensions.cs diff --git a/SabreTools.IO.Extensions/ExtensionAttribute.cs b/SabreTools.IO.Extensions/ExtensionAttribute.cs new file mode 100644 index 0000000..478ed8b --- /dev/null +++ b/SabreTools.IO.Extensions/ExtensionAttribute.cs @@ -0,0 +1,9 @@ +#if NET20 + +namespace System.Runtime.CompilerServices +{ + [AttributeUsage(AttributeTargets.Assembly | AttributeTargets.Class | AttributeTargets.Method)] + internal sealed class ExtensionAttribute : Attribute { } +} + +#endif diff --git a/SabreTools.IO/SabreTools.IO.Extensions/IOExtensions.cs b/SabreTools.IO.Extensions/IOExtensions.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Extensions/IOExtensions.cs rename to SabreTools.IO.Extensions/IOExtensions.cs diff --git a/SabreTools.IO/SabreTools.IO.Extensions/MarshalHelpers.cs b/SabreTools.IO.Extensions/MarshalHelpers.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Extensions/MarshalHelpers.cs rename to SabreTools.IO.Extensions/MarshalHelpers.cs diff --git a/SabreTools.IO/SabreTools.IO.Extensions/NumericExtensions.cs b/SabreTools.IO.Extensions/NumericExtensions.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Extensions/NumericExtensions.cs rename to SabreTools.IO.Extensions/NumericExtensions.cs diff --git a/SabreTools.IO/SabreTools.IO.Extensions/ParentablePathExtensions.cs b/SabreTools.IO.Extensions/ParentablePathExtensions.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Extensions/ParentablePathExtensions.cs rename to SabreTools.IO.Extensions/ParentablePathExtensions.cs diff --git a/SabreTools.IO/SabreTools.IO.Extensions/README.MD b/SabreTools.IO.Extensions/README.MD similarity index 100% rename from SabreTools.IO/SabreTools.IO.Extensions/README.MD rename to SabreTools.IO.Extensions/README.MD diff --git a/SabreTools.IO/SabreTools.IO.Extensions/ReadOnlyBitStreamExtensions.cs b/SabreTools.IO.Extensions/ReadOnlyBitStreamExtensions.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Extensions/ReadOnlyBitStreamExtensions.cs rename to SabreTools.IO.Extensions/ReadOnlyBitStreamExtensions.cs diff --git a/SabreTools.IO.Extensions/SabreTools.IO.Extensions.csproj b/SabreTools.IO.Extensions/SabreTools.IO.Extensions.csproj new file mode 100644 index 0000000..fcf6c97 --- /dev/null +++ b/SabreTools.IO.Extensions/SabreTools.IO.Extensions.csproj @@ -0,0 +1,39 @@ + + + + + net20;net35;net40;net452;net462;net472;net48;netcoreapp3.1;net5.0;net6.0;net7.0;net8.0;net9.0;net10.0;netstandard2.0;netstandard2.1 + true + true + latest + CS0618 + enable + true + snupkg + true + 1.9.1 + + + Matt Nadareski + Common IO utilities by other SabreTools projects + Copyright (c) Matt Nadareski 2019-2025 + https://github.com/SabreTools/ + README.md + https://github.com/SabreTools/SabreTools.IO + git + io reading writing ini csv ssv tsv + MIT + + + + + + + + + + + + + + \ No newline at end of file diff --git a/SabreTools.IO/SabreTools.IO.Extensions/StreamExtensions.cs b/SabreTools.IO.Extensions/StreamExtensions.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Extensions/StreamExtensions.cs rename to SabreTools.IO.Extensions/StreamExtensions.cs diff --git a/SabreTools.IO/SabreTools.IO.Extensions/StreamReaderExtensions.cs b/SabreTools.IO.Extensions/StreamReaderExtensions.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Extensions/StreamReaderExtensions.cs rename to SabreTools.IO.Extensions/StreamReaderExtensions.cs diff --git a/SabreTools.IO/SabreTools.IO.Extensions/StreamWriterExtensions.cs b/SabreTools.IO.Extensions/StreamWriterExtensions.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Extensions/StreamWriterExtensions.cs rename to SabreTools.IO.Extensions/StreamWriterExtensions.cs diff --git a/SabreTools.IO/SabreTools.IO.Extensions/StringExtensions.cs b/SabreTools.IO.Extensions/StringExtensions.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Extensions/StringExtensions.cs rename to SabreTools.IO.Extensions/StringExtensions.cs diff --git a/SabreTools.IO/SabreTools.IO.Extensions/XmlTextWriterExtensions.cs b/SabreTools.IO.Extensions/XmlTextWriterExtensions.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO.Extensions/XmlTextWriterExtensions.cs rename to SabreTools.IO.Extensions/XmlTextWriterExtensions.cs diff --git a/SabreTools.IO.Meta/SabreTools.IO.Meta.csproj b/SabreTools.IO.Meta/SabreTools.IO.Meta.csproj new file mode 100644 index 0000000..6e5a130 --- /dev/null +++ b/SabreTools.IO.Meta/SabreTools.IO.Meta.csproj @@ -0,0 +1,62 @@ + + + + + net20;net35;net40;net452;net462;net472;net48;netcoreapp3.1;net5.0;net6.0;net7.0;net8.0;net9.0;net10.0;netstandard2.0;netstandard2.1 + true + true + latest + CS0618 + enable + true + snupkg + true + 1.9.1 + + + SabreTools.IO + Matt Nadareski + Common IO utilities by other SabreTools projects + Copyright (c) Matt Nadareski 2019-2025 + https://github.com/SabreTools/ + README.md + https://github.com/SabreTools/SabreTools.IO + git + io reading writing ini csv ssv tsv + MIT + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/SabreTools.IO.Test/SabreTools.IO.Test.csproj b/SabreTools.IO.Test/SabreTools.IO.Test.csproj index ed03935..5fedbca 100644 --- a/SabreTools.IO.Test/SabreTools.IO.Test.csproj +++ b/SabreTools.IO.Test/SabreTools.IO.Test.csproj @@ -34,6 +34,8 @@ + + \ No newline at end of file diff --git a/SabreTools.IO.sln b/SabreTools.IO.sln index 8705382..150e687 100644 --- a/SabreTools.IO.sln +++ b/SabreTools.IO.sln @@ -23,6 +23,34 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SabreTools.Text.SeparatedVa EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SabreTools.Text.Utilities.Test", "SabreTools.Text.Utilities.Test\SabreTools.Text.Utilities.Test.csproj", "{71B85140-6468-4747-AF42-C1C0F04A4D80}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SabreTools.IO.Meta", "SabreTools.IO.Meta\SabreTools.IO.Meta.csproj", "{5BCF7EB4-33AC-4139-8466-41E06FF86072}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SabreTools.IO.Compression", "SabreTools.IO.Compression\SabreTools.IO.Compression.csproj", "{00D197D9-6F57-44FA-A399-FFEA61603B28}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SabreTools.IO.Extensions", "SabreTools.IO.Extensions\SabreTools.IO.Extensions.csproj", "{ABC3D682-4A02-46FB-8EC3-27D0119D3042}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SabreTools.Logging", "SabreTools.Logging\SabreTools.Logging.csproj", "{9A192B06-8970-4763-AB78-4B1C9FA854E1}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SabreTools.Matching", "SabreTools.Matching\SabreTools.Matching.csproj", "{97265DE9-5B64-459B-A768-2B8C6311FE11}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SabreTools.Numerics", "SabreTools.Numerics\SabreTools.Numerics.csproj", "{D00B8345-6472-4EF9-8953-CFCA8734DA6F}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SabreTools.Security.Cryptography", "SabreTools.Security.Cryptography\SabreTools.Security.Cryptography.csproj", "{5DC86AB2-C224-49F4-8AB3-C91DC8186FD7}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SabreTools.Text.ClrMamePro", "SabreTools.Text.ClrMamePro\SabreTools.Text.ClrMamePro.csproj", "{F152E4A8-B9B2-4AAC-A27E-760D391F2D2D}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SabreTools.Text.Compare", "SabreTools.Text.Compare\SabreTools.Text.Compare.csproj", "{168D97AB-4D17-4015-BCFC-6CC1FA24E747}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SabreTools.Text.INI", "SabreTools.Text.INI\SabreTools.Text.INI.csproj", "{6FB12A7F-4285-4D64-B972-A3F07E416448}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SabreTools.Text.SeparatedValue", "SabreTools.Text.SeparatedValue\SabreTools.Text.SeparatedValue.csproj", "{E1E0B039-2714-40EE-9BF2-0864D3D3535A}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SabreTools.Text.Utilities", "SabreTools.Text.Utilities\SabreTools.Text.Utilities.csproj", "{E8842271-ECA1-41BD-B360-E3C73505BAEC}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SabreTools.IO.Compression.Test", "SabreTools.IO.Compression.Test\SabreTools.IO.Compression.Test.csproj", "{F3036FE7-8B03-4B47-AE6D-93E99C09FF8F}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SabreTools.IO.Extensions.Test", "SabreTools.IO.Extensions.Test\SabreTools.IO.Extensions.Test.csproj", "{C829B479-3D3B-48EE-BDD7-5EFB40340166}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -153,6 +181,174 @@ Global {71B85140-6468-4747-AF42-C1C0F04A4D80}.Release|x64.Build.0 = Release|Any CPU {71B85140-6468-4747-AF42-C1C0F04A4D80}.Release|x86.ActiveCfg = Release|Any CPU {71B85140-6468-4747-AF42-C1C0F04A4D80}.Release|x86.Build.0 = Release|Any CPU + {5BCF7EB4-33AC-4139-8466-41E06FF86072}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {5BCF7EB4-33AC-4139-8466-41E06FF86072}.Debug|Any CPU.Build.0 = Debug|Any CPU + {5BCF7EB4-33AC-4139-8466-41E06FF86072}.Debug|x64.ActiveCfg = Debug|Any CPU + {5BCF7EB4-33AC-4139-8466-41E06FF86072}.Debug|x64.Build.0 = Debug|Any CPU + {5BCF7EB4-33AC-4139-8466-41E06FF86072}.Debug|x86.ActiveCfg = Debug|Any CPU + {5BCF7EB4-33AC-4139-8466-41E06FF86072}.Debug|x86.Build.0 = Debug|Any CPU + {5BCF7EB4-33AC-4139-8466-41E06FF86072}.Release|Any CPU.ActiveCfg = Release|Any CPU + {5BCF7EB4-33AC-4139-8466-41E06FF86072}.Release|Any CPU.Build.0 = Release|Any CPU + {5BCF7EB4-33AC-4139-8466-41E06FF86072}.Release|x64.ActiveCfg = Release|Any CPU + {5BCF7EB4-33AC-4139-8466-41E06FF86072}.Release|x64.Build.0 = Release|Any CPU + {5BCF7EB4-33AC-4139-8466-41E06FF86072}.Release|x86.ActiveCfg = Release|Any CPU + {5BCF7EB4-33AC-4139-8466-41E06FF86072}.Release|x86.Build.0 = Release|Any CPU + {00D197D9-6F57-44FA-A399-FFEA61603B28}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {00D197D9-6F57-44FA-A399-FFEA61603B28}.Debug|Any CPU.Build.0 = Debug|Any CPU + {00D197D9-6F57-44FA-A399-FFEA61603B28}.Debug|x64.ActiveCfg = Debug|Any CPU + {00D197D9-6F57-44FA-A399-FFEA61603B28}.Debug|x64.Build.0 = Debug|Any CPU + {00D197D9-6F57-44FA-A399-FFEA61603B28}.Debug|x86.ActiveCfg = Debug|Any CPU + {00D197D9-6F57-44FA-A399-FFEA61603B28}.Debug|x86.Build.0 = Debug|Any CPU + {00D197D9-6F57-44FA-A399-FFEA61603B28}.Release|Any CPU.ActiveCfg = Release|Any CPU + {00D197D9-6F57-44FA-A399-FFEA61603B28}.Release|Any CPU.Build.0 = Release|Any CPU + {00D197D9-6F57-44FA-A399-FFEA61603B28}.Release|x64.ActiveCfg = Release|Any CPU + {00D197D9-6F57-44FA-A399-FFEA61603B28}.Release|x64.Build.0 = Release|Any CPU + {00D197D9-6F57-44FA-A399-FFEA61603B28}.Release|x86.ActiveCfg = Release|Any CPU + {00D197D9-6F57-44FA-A399-FFEA61603B28}.Release|x86.Build.0 = Release|Any CPU + {ABC3D682-4A02-46FB-8EC3-27D0119D3042}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {ABC3D682-4A02-46FB-8EC3-27D0119D3042}.Debug|Any CPU.Build.0 = Debug|Any CPU + {ABC3D682-4A02-46FB-8EC3-27D0119D3042}.Debug|x64.ActiveCfg = Debug|Any CPU + {ABC3D682-4A02-46FB-8EC3-27D0119D3042}.Debug|x64.Build.0 = Debug|Any CPU + {ABC3D682-4A02-46FB-8EC3-27D0119D3042}.Debug|x86.ActiveCfg = Debug|Any CPU + {ABC3D682-4A02-46FB-8EC3-27D0119D3042}.Debug|x86.Build.0 = Debug|Any CPU + {ABC3D682-4A02-46FB-8EC3-27D0119D3042}.Release|Any CPU.ActiveCfg = Release|Any CPU + {ABC3D682-4A02-46FB-8EC3-27D0119D3042}.Release|Any CPU.Build.0 = Release|Any CPU + {ABC3D682-4A02-46FB-8EC3-27D0119D3042}.Release|x64.ActiveCfg = Release|Any CPU + {ABC3D682-4A02-46FB-8EC3-27D0119D3042}.Release|x64.Build.0 = Release|Any CPU + {ABC3D682-4A02-46FB-8EC3-27D0119D3042}.Release|x86.ActiveCfg = Release|Any CPU + {ABC3D682-4A02-46FB-8EC3-27D0119D3042}.Release|x86.Build.0 = Release|Any CPU + {9A192B06-8970-4763-AB78-4B1C9FA854E1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {9A192B06-8970-4763-AB78-4B1C9FA854E1}.Debug|Any CPU.Build.0 = Debug|Any CPU + {9A192B06-8970-4763-AB78-4B1C9FA854E1}.Debug|x64.ActiveCfg = Debug|Any CPU + {9A192B06-8970-4763-AB78-4B1C9FA854E1}.Debug|x64.Build.0 = Debug|Any CPU + {9A192B06-8970-4763-AB78-4B1C9FA854E1}.Debug|x86.ActiveCfg = Debug|Any CPU + {9A192B06-8970-4763-AB78-4B1C9FA854E1}.Debug|x86.Build.0 = Debug|Any CPU + {9A192B06-8970-4763-AB78-4B1C9FA854E1}.Release|Any CPU.ActiveCfg = Release|Any CPU + {9A192B06-8970-4763-AB78-4B1C9FA854E1}.Release|Any CPU.Build.0 = Release|Any CPU + {9A192B06-8970-4763-AB78-4B1C9FA854E1}.Release|x64.ActiveCfg = Release|Any CPU + {9A192B06-8970-4763-AB78-4B1C9FA854E1}.Release|x64.Build.0 = Release|Any CPU + {9A192B06-8970-4763-AB78-4B1C9FA854E1}.Release|x86.ActiveCfg = Release|Any CPU + {9A192B06-8970-4763-AB78-4B1C9FA854E1}.Release|x86.Build.0 = Release|Any CPU + {97265DE9-5B64-459B-A768-2B8C6311FE11}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {97265DE9-5B64-459B-A768-2B8C6311FE11}.Debug|Any CPU.Build.0 = Debug|Any CPU + {97265DE9-5B64-459B-A768-2B8C6311FE11}.Debug|x64.ActiveCfg = Debug|Any CPU + {97265DE9-5B64-459B-A768-2B8C6311FE11}.Debug|x64.Build.0 = Debug|Any CPU + {97265DE9-5B64-459B-A768-2B8C6311FE11}.Debug|x86.ActiveCfg = Debug|Any CPU + {97265DE9-5B64-459B-A768-2B8C6311FE11}.Debug|x86.Build.0 = Debug|Any CPU + {97265DE9-5B64-459B-A768-2B8C6311FE11}.Release|Any CPU.ActiveCfg = Release|Any CPU + {97265DE9-5B64-459B-A768-2B8C6311FE11}.Release|Any CPU.Build.0 = Release|Any CPU + {97265DE9-5B64-459B-A768-2B8C6311FE11}.Release|x64.ActiveCfg = Release|Any CPU + {97265DE9-5B64-459B-A768-2B8C6311FE11}.Release|x64.Build.0 = Release|Any CPU + {97265DE9-5B64-459B-A768-2B8C6311FE11}.Release|x86.ActiveCfg = Release|Any CPU + {97265DE9-5B64-459B-A768-2B8C6311FE11}.Release|x86.Build.0 = Release|Any CPU + {D00B8345-6472-4EF9-8953-CFCA8734DA6F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {D00B8345-6472-4EF9-8953-CFCA8734DA6F}.Debug|Any CPU.Build.0 = Debug|Any CPU + {D00B8345-6472-4EF9-8953-CFCA8734DA6F}.Debug|x64.ActiveCfg = Debug|Any CPU + {D00B8345-6472-4EF9-8953-CFCA8734DA6F}.Debug|x64.Build.0 = Debug|Any CPU + {D00B8345-6472-4EF9-8953-CFCA8734DA6F}.Debug|x86.ActiveCfg = Debug|Any CPU + {D00B8345-6472-4EF9-8953-CFCA8734DA6F}.Debug|x86.Build.0 = Debug|Any CPU + {D00B8345-6472-4EF9-8953-CFCA8734DA6F}.Release|Any CPU.ActiveCfg = Release|Any CPU + {D00B8345-6472-4EF9-8953-CFCA8734DA6F}.Release|Any CPU.Build.0 = Release|Any CPU + {D00B8345-6472-4EF9-8953-CFCA8734DA6F}.Release|x64.ActiveCfg = Release|Any CPU + {D00B8345-6472-4EF9-8953-CFCA8734DA6F}.Release|x64.Build.0 = Release|Any CPU + {D00B8345-6472-4EF9-8953-CFCA8734DA6F}.Release|x86.ActiveCfg = Release|Any CPU + {D00B8345-6472-4EF9-8953-CFCA8734DA6F}.Release|x86.Build.0 = Release|Any CPU + {5DC86AB2-C224-49F4-8AB3-C91DC8186FD7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {5DC86AB2-C224-49F4-8AB3-C91DC8186FD7}.Debug|Any CPU.Build.0 = Debug|Any CPU + {5DC86AB2-C224-49F4-8AB3-C91DC8186FD7}.Debug|x64.ActiveCfg = Debug|Any CPU + {5DC86AB2-C224-49F4-8AB3-C91DC8186FD7}.Debug|x64.Build.0 = Debug|Any CPU + {5DC86AB2-C224-49F4-8AB3-C91DC8186FD7}.Debug|x86.ActiveCfg = Debug|Any CPU + {5DC86AB2-C224-49F4-8AB3-C91DC8186FD7}.Debug|x86.Build.0 = Debug|Any CPU + {5DC86AB2-C224-49F4-8AB3-C91DC8186FD7}.Release|Any CPU.ActiveCfg = Release|Any CPU + {5DC86AB2-C224-49F4-8AB3-C91DC8186FD7}.Release|Any CPU.Build.0 = Release|Any CPU + {5DC86AB2-C224-49F4-8AB3-C91DC8186FD7}.Release|x64.ActiveCfg = Release|Any CPU + {5DC86AB2-C224-49F4-8AB3-C91DC8186FD7}.Release|x64.Build.0 = Release|Any CPU + {5DC86AB2-C224-49F4-8AB3-C91DC8186FD7}.Release|x86.ActiveCfg = Release|Any CPU + {5DC86AB2-C224-49F4-8AB3-C91DC8186FD7}.Release|x86.Build.0 = Release|Any CPU + {F152E4A8-B9B2-4AAC-A27E-760D391F2D2D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {F152E4A8-B9B2-4AAC-A27E-760D391F2D2D}.Debug|Any CPU.Build.0 = Debug|Any CPU + {F152E4A8-B9B2-4AAC-A27E-760D391F2D2D}.Debug|x64.ActiveCfg = Debug|Any CPU + {F152E4A8-B9B2-4AAC-A27E-760D391F2D2D}.Debug|x64.Build.0 = Debug|Any CPU + {F152E4A8-B9B2-4AAC-A27E-760D391F2D2D}.Debug|x86.ActiveCfg = Debug|Any CPU + {F152E4A8-B9B2-4AAC-A27E-760D391F2D2D}.Debug|x86.Build.0 = Debug|Any CPU + {F152E4A8-B9B2-4AAC-A27E-760D391F2D2D}.Release|Any CPU.ActiveCfg = Release|Any CPU + {F152E4A8-B9B2-4AAC-A27E-760D391F2D2D}.Release|Any CPU.Build.0 = Release|Any CPU + {F152E4A8-B9B2-4AAC-A27E-760D391F2D2D}.Release|x64.ActiveCfg = Release|Any CPU + {F152E4A8-B9B2-4AAC-A27E-760D391F2D2D}.Release|x64.Build.0 = Release|Any CPU + {F152E4A8-B9B2-4AAC-A27E-760D391F2D2D}.Release|x86.ActiveCfg = Release|Any CPU + {F152E4A8-B9B2-4AAC-A27E-760D391F2D2D}.Release|x86.Build.0 = Release|Any CPU + {168D97AB-4D17-4015-BCFC-6CC1FA24E747}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {168D97AB-4D17-4015-BCFC-6CC1FA24E747}.Debug|Any CPU.Build.0 = Debug|Any CPU + {168D97AB-4D17-4015-BCFC-6CC1FA24E747}.Debug|x64.ActiveCfg = Debug|Any CPU + {168D97AB-4D17-4015-BCFC-6CC1FA24E747}.Debug|x64.Build.0 = Debug|Any CPU + {168D97AB-4D17-4015-BCFC-6CC1FA24E747}.Debug|x86.ActiveCfg = Debug|Any CPU + {168D97AB-4D17-4015-BCFC-6CC1FA24E747}.Debug|x86.Build.0 = Debug|Any CPU + {168D97AB-4D17-4015-BCFC-6CC1FA24E747}.Release|Any CPU.ActiveCfg = Release|Any CPU + {168D97AB-4D17-4015-BCFC-6CC1FA24E747}.Release|Any CPU.Build.0 = Release|Any CPU + {168D97AB-4D17-4015-BCFC-6CC1FA24E747}.Release|x64.ActiveCfg = Release|Any CPU + {168D97AB-4D17-4015-BCFC-6CC1FA24E747}.Release|x64.Build.0 = Release|Any CPU + {168D97AB-4D17-4015-BCFC-6CC1FA24E747}.Release|x86.ActiveCfg = Release|Any CPU + {168D97AB-4D17-4015-BCFC-6CC1FA24E747}.Release|x86.Build.0 = Release|Any CPU + {6FB12A7F-4285-4D64-B972-A3F07E416448}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {6FB12A7F-4285-4D64-B972-A3F07E416448}.Debug|Any CPU.Build.0 = Debug|Any CPU + {6FB12A7F-4285-4D64-B972-A3F07E416448}.Debug|x64.ActiveCfg = Debug|Any CPU + {6FB12A7F-4285-4D64-B972-A3F07E416448}.Debug|x64.Build.0 = Debug|Any CPU + {6FB12A7F-4285-4D64-B972-A3F07E416448}.Debug|x86.ActiveCfg = Debug|Any CPU + {6FB12A7F-4285-4D64-B972-A3F07E416448}.Debug|x86.Build.0 = Debug|Any CPU + {6FB12A7F-4285-4D64-B972-A3F07E416448}.Release|Any CPU.ActiveCfg = Release|Any CPU + {6FB12A7F-4285-4D64-B972-A3F07E416448}.Release|Any CPU.Build.0 = Release|Any CPU + {6FB12A7F-4285-4D64-B972-A3F07E416448}.Release|x64.ActiveCfg = Release|Any CPU + {6FB12A7F-4285-4D64-B972-A3F07E416448}.Release|x64.Build.0 = Release|Any CPU + {6FB12A7F-4285-4D64-B972-A3F07E416448}.Release|x86.ActiveCfg = Release|Any CPU + {6FB12A7F-4285-4D64-B972-A3F07E416448}.Release|x86.Build.0 = Release|Any CPU + {E1E0B039-2714-40EE-9BF2-0864D3D3535A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {E1E0B039-2714-40EE-9BF2-0864D3D3535A}.Debug|Any CPU.Build.0 = Debug|Any CPU + {E1E0B039-2714-40EE-9BF2-0864D3D3535A}.Debug|x64.ActiveCfg = Debug|Any CPU + {E1E0B039-2714-40EE-9BF2-0864D3D3535A}.Debug|x64.Build.0 = Debug|Any CPU + {E1E0B039-2714-40EE-9BF2-0864D3D3535A}.Debug|x86.ActiveCfg = Debug|Any CPU + {E1E0B039-2714-40EE-9BF2-0864D3D3535A}.Debug|x86.Build.0 = Debug|Any CPU + {E1E0B039-2714-40EE-9BF2-0864D3D3535A}.Release|Any CPU.ActiveCfg = Release|Any CPU + {E1E0B039-2714-40EE-9BF2-0864D3D3535A}.Release|Any CPU.Build.0 = Release|Any CPU + {E1E0B039-2714-40EE-9BF2-0864D3D3535A}.Release|x64.ActiveCfg = Release|Any CPU + {E1E0B039-2714-40EE-9BF2-0864D3D3535A}.Release|x64.Build.0 = Release|Any CPU + {E1E0B039-2714-40EE-9BF2-0864D3D3535A}.Release|x86.ActiveCfg = Release|Any CPU + {E1E0B039-2714-40EE-9BF2-0864D3D3535A}.Release|x86.Build.0 = Release|Any CPU + {E8842271-ECA1-41BD-B360-E3C73505BAEC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {E8842271-ECA1-41BD-B360-E3C73505BAEC}.Debug|Any CPU.Build.0 = Debug|Any CPU + {E8842271-ECA1-41BD-B360-E3C73505BAEC}.Debug|x64.ActiveCfg = Debug|Any CPU + {E8842271-ECA1-41BD-B360-E3C73505BAEC}.Debug|x64.Build.0 = Debug|Any CPU + {E8842271-ECA1-41BD-B360-E3C73505BAEC}.Debug|x86.ActiveCfg = Debug|Any CPU + {E8842271-ECA1-41BD-B360-E3C73505BAEC}.Debug|x86.Build.0 = Debug|Any CPU + {E8842271-ECA1-41BD-B360-E3C73505BAEC}.Release|Any CPU.ActiveCfg = Release|Any CPU + {E8842271-ECA1-41BD-B360-E3C73505BAEC}.Release|Any CPU.Build.0 = Release|Any CPU + {E8842271-ECA1-41BD-B360-E3C73505BAEC}.Release|x64.ActiveCfg = Release|Any CPU + {E8842271-ECA1-41BD-B360-E3C73505BAEC}.Release|x64.Build.0 = Release|Any CPU + {E8842271-ECA1-41BD-B360-E3C73505BAEC}.Release|x86.ActiveCfg = Release|Any CPU + {E8842271-ECA1-41BD-B360-E3C73505BAEC}.Release|x86.Build.0 = Release|Any CPU + {F3036FE7-8B03-4B47-AE6D-93E99C09FF8F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {F3036FE7-8B03-4B47-AE6D-93E99C09FF8F}.Debug|Any CPU.Build.0 = Debug|Any CPU + {F3036FE7-8B03-4B47-AE6D-93E99C09FF8F}.Debug|x64.ActiveCfg = Debug|Any CPU + {F3036FE7-8B03-4B47-AE6D-93E99C09FF8F}.Debug|x64.Build.0 = Debug|Any CPU + {F3036FE7-8B03-4B47-AE6D-93E99C09FF8F}.Debug|x86.ActiveCfg = Debug|Any CPU + {F3036FE7-8B03-4B47-AE6D-93E99C09FF8F}.Debug|x86.Build.0 = Debug|Any CPU + {F3036FE7-8B03-4B47-AE6D-93E99C09FF8F}.Release|Any CPU.ActiveCfg = Release|Any CPU + {F3036FE7-8B03-4B47-AE6D-93E99C09FF8F}.Release|Any CPU.Build.0 = Release|Any CPU + {F3036FE7-8B03-4B47-AE6D-93E99C09FF8F}.Release|x64.ActiveCfg = Release|Any CPU + {F3036FE7-8B03-4B47-AE6D-93E99C09FF8F}.Release|x64.Build.0 = Release|Any CPU + {F3036FE7-8B03-4B47-AE6D-93E99C09FF8F}.Release|x86.ActiveCfg = Release|Any CPU + {F3036FE7-8B03-4B47-AE6D-93E99C09FF8F}.Release|x86.Build.0 = Release|Any CPU + {C829B479-3D3B-48EE-BDD7-5EFB40340166}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {C829B479-3D3B-48EE-BDD7-5EFB40340166}.Debug|Any CPU.Build.0 = Debug|Any CPU + {C829B479-3D3B-48EE-BDD7-5EFB40340166}.Debug|x64.ActiveCfg = Debug|Any CPU + {C829B479-3D3B-48EE-BDD7-5EFB40340166}.Debug|x64.Build.0 = Debug|Any CPU + {C829B479-3D3B-48EE-BDD7-5EFB40340166}.Debug|x86.ActiveCfg = Debug|Any CPU + {C829B479-3D3B-48EE-BDD7-5EFB40340166}.Debug|x86.Build.0 = Debug|Any CPU + {C829B479-3D3B-48EE-BDD7-5EFB40340166}.Release|Any CPU.ActiveCfg = Release|Any CPU + {C829B479-3D3B-48EE-BDD7-5EFB40340166}.Release|Any CPU.Build.0 = Release|Any CPU + {C829B479-3D3B-48EE-BDD7-5EFB40340166}.Release|x64.ActiveCfg = Release|Any CPU + {C829B479-3D3B-48EE-BDD7-5EFB40340166}.Release|x64.Build.0 = Release|Any CPU + {C829B479-3D3B-48EE-BDD7-5EFB40340166}.Release|x86.ActiveCfg = Release|Any CPU + {C829B479-3D3B-48EE-BDD7-5EFB40340166}.Release|x86.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/SabreTools.IO/SabreTools.IO/BufferedStream.cs b/SabreTools.IO/BufferedStream.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO/BufferedStream.cs rename to SabreTools.IO/BufferedStream.cs diff --git a/SabreTools.IO/SabreTools.IO/Enums.cs b/SabreTools.IO/Enums.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO/Enums.cs rename to SabreTools.IO/Enums.cs diff --git a/SabreTools.IO/SabreTools.IO/OldDotNet.cs b/SabreTools.IO/OldDotNet.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO/OldDotNet.cs rename to SabreTools.IO/OldDotNet.cs diff --git a/SabreTools.IO/SabreTools.IO/ParentablePath.cs b/SabreTools.IO/ParentablePath.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO/ParentablePath.cs rename to SabreTools.IO/ParentablePath.cs diff --git a/SabreTools.IO/SabreTools.IO/PathTool.cs b/SabreTools.IO/PathTool.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO/PathTool.cs rename to SabreTools.IO/PathTool.cs diff --git a/SabreTools.IO/SabreTools.IO/README.MD b/SabreTools.IO/README.MD similarity index 100% rename from SabreTools.IO/SabreTools.IO/README.MD rename to SabreTools.IO/README.MD diff --git a/SabreTools.IO/SabreTools.IO/ReadOnlyBitStream.cs b/SabreTools.IO/ReadOnlyBitStream.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO/ReadOnlyBitStream.cs rename to SabreTools.IO/ReadOnlyBitStream.cs diff --git a/SabreTools.IO/SabreTools.IO/ReadOnlyCompositeStream.cs b/SabreTools.IO/ReadOnlyCompositeStream.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO/ReadOnlyCompositeStream.cs rename to SabreTools.IO/ReadOnlyCompositeStream.cs diff --git a/SabreTools.IO/SabreTools.IO.csproj b/SabreTools.IO/SabreTools.IO.csproj index a706fa9..2847735 100644 --- a/SabreTools.IO/SabreTools.IO.csproj +++ b/SabreTools.IO/SabreTools.IO.csproj @@ -14,6 +14,7 @@ 1.9.1 + SabreTools.IO.Common Matt Nadareski Common IO utilities by other SabreTools projects Copyright (c) Matt Nadareski 2019-2025 @@ -26,19 +27,11 @@ - + - - - - - - - - - + \ No newline at end of file diff --git a/SabreTools.IO/SabreTools.IO/Transform.cs b/SabreTools.IO/Transform.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO/Transform.cs rename to SabreTools.IO/Transform.cs diff --git a/SabreTools.IO/SabreTools.IO/ViewStream.cs b/SabreTools.IO/ViewStream.cs similarity index 100% rename from SabreTools.IO/SabreTools.IO/ViewStream.cs rename to SabreTools.IO/ViewStream.cs diff --git a/SabreTools.Logging.Test/SabreTools.Logging.Test.csproj b/SabreTools.Logging.Test/SabreTools.Logging.Test.csproj index 45347d9..9174315 100644 --- a/SabreTools.Logging.Test/SabreTools.Logging.Test.csproj +++ b/SabreTools.Logging.Test/SabreTools.Logging.Test.csproj @@ -23,7 +23,7 @@ - + \ No newline at end of file diff --git a/SabreTools.IO/SabreTools.Logging/Converters.cs b/SabreTools.Logging/Converters.cs similarity index 100% rename from SabreTools.IO/SabreTools.Logging/Converters.cs rename to SabreTools.Logging/Converters.cs diff --git a/SabreTools.IO/SabreTools.Logging/Enums.cs b/SabreTools.Logging/Enums.cs similarity index 100% rename from SabreTools.IO/SabreTools.Logging/Enums.cs rename to SabreTools.Logging/Enums.cs diff --git a/SabreTools.Logging/ExtensionAttribute.cs b/SabreTools.Logging/ExtensionAttribute.cs new file mode 100644 index 0000000..478ed8b --- /dev/null +++ b/SabreTools.Logging/ExtensionAttribute.cs @@ -0,0 +1,9 @@ +#if NET20 + +namespace System.Runtime.CompilerServices +{ + [AttributeUsage(AttributeTargets.Assembly | AttributeTargets.Class | AttributeTargets.Method)] + internal sealed class ExtensionAttribute : Attribute { } +} + +#endif diff --git a/SabreTools.IO/SabreTools.Logging/InternalStopwatch.cs b/SabreTools.Logging/InternalStopwatch.cs similarity index 100% rename from SabreTools.IO/SabreTools.Logging/InternalStopwatch.cs rename to SabreTools.Logging/InternalStopwatch.cs diff --git a/SabreTools.IO/SabreTools.Logging/LogEventArgs.cs b/SabreTools.Logging/LogEventArgs.cs similarity index 100% rename from SabreTools.IO/SabreTools.Logging/LogEventArgs.cs rename to SabreTools.Logging/LogEventArgs.cs diff --git a/SabreTools.IO/SabreTools.Logging/Logger.cs b/SabreTools.Logging/Logger.cs similarity index 100% rename from SabreTools.IO/SabreTools.Logging/Logger.cs rename to SabreTools.Logging/Logger.cs diff --git a/SabreTools.IO/SabreTools.Logging/LoggerImpl.cs b/SabreTools.Logging/LoggerImpl.cs similarity index 100% rename from SabreTools.IO/SabreTools.Logging/LoggerImpl.cs rename to SabreTools.Logging/LoggerImpl.cs diff --git a/SabreTools.IO/SabreTools.Logging/README.MD b/SabreTools.Logging/README.MD similarity index 100% rename from SabreTools.IO/SabreTools.Logging/README.MD rename to SabreTools.Logging/README.MD diff --git a/SabreTools.Logging/SabreTools.Logging.csproj b/SabreTools.Logging/SabreTools.Logging.csproj new file mode 100644 index 0000000..9a23c12 --- /dev/null +++ b/SabreTools.Logging/SabreTools.Logging.csproj @@ -0,0 +1,32 @@ + + + + + net20;net35;net40;net452;net462;net472;net48;netcoreapp3.1;net5.0;net6.0;net7.0;net8.0;net9.0;net10.0;netstandard2.0;netstandard2.1 + true + true + latest + CS0618 + enable + true + snupkg + true + 1.9.1 + + + Matt Nadareski + Common IO utilities by other SabreTools projects + Copyright (c) Matt Nadareski 2019-2025 + https://github.com/SabreTools/ + README.md + https://github.com/SabreTools/SabreTools.IO + git + io reading writing ini csv ssv tsv + MIT + + + + + + + \ No newline at end of file diff --git a/SabreTools.Matching.Test/SabreTools.Matching.Test.csproj b/SabreTools.Matching.Test/SabreTools.Matching.Test.csproj index 45347d9..c4ba91b 100644 --- a/SabreTools.Matching.Test/SabreTools.Matching.Test.csproj +++ b/SabreTools.Matching.Test/SabreTools.Matching.Test.csproj @@ -23,7 +23,7 @@ - + \ No newline at end of file diff --git a/SabreTools.IO/SabreTools.Matching/ContentMatch.cs b/SabreTools.Matching/ContentMatch.cs similarity index 100% rename from SabreTools.IO/SabreTools.Matching/ContentMatch.cs rename to SabreTools.Matching/ContentMatch.cs diff --git a/SabreTools.IO/SabreTools.Matching/ContentMatchSet.cs b/SabreTools.Matching/ContentMatchSet.cs similarity index 100% rename from SabreTools.IO/SabreTools.Matching/ContentMatchSet.cs rename to SabreTools.Matching/ContentMatchSet.cs diff --git a/SabreTools.IO/SabreTools.Matching/Delegates.cs b/SabreTools.Matching/Delegates.cs similarity index 100% rename from SabreTools.IO/SabreTools.Matching/Delegates.cs rename to SabreTools.Matching/Delegates.cs diff --git a/SabreTools.IO/SabreTools.Matching/FilePathMatch.cs b/SabreTools.Matching/FilePathMatch.cs similarity index 100% rename from SabreTools.IO/SabreTools.Matching/FilePathMatch.cs rename to SabreTools.Matching/FilePathMatch.cs diff --git a/SabreTools.IO/SabreTools.Matching/IMatch.cs b/SabreTools.Matching/IMatch.cs similarity index 100% rename from SabreTools.IO/SabreTools.Matching/IMatch.cs rename to SabreTools.Matching/IMatch.cs diff --git a/SabreTools.IO/SabreTools.Matching/IMatchSet.cs b/SabreTools.Matching/IMatchSet.cs similarity index 100% rename from SabreTools.IO/SabreTools.Matching/IMatchSet.cs rename to SabreTools.Matching/IMatchSet.cs diff --git a/SabreTools.IO/SabreTools.Matching/MatchUtil.cs b/SabreTools.Matching/MatchUtil.cs similarity index 100% rename from SabreTools.IO/SabreTools.Matching/MatchUtil.cs rename to SabreTools.Matching/MatchUtil.cs diff --git a/SabreTools.IO/SabreTools.Matching/PathMatch.cs b/SabreTools.Matching/PathMatch.cs similarity index 100% rename from SabreTools.IO/SabreTools.Matching/PathMatch.cs rename to SabreTools.Matching/PathMatch.cs diff --git a/SabreTools.IO/SabreTools.Matching/PathMatchSet.cs b/SabreTools.Matching/PathMatchSet.cs similarity index 100% rename from SabreTools.IO/SabreTools.Matching/PathMatchSet.cs rename to SabreTools.Matching/PathMatchSet.cs diff --git a/SabreTools.IO/SabreTools.Matching/README.MD b/SabreTools.Matching/README.MD similarity index 100% rename from SabreTools.IO/SabreTools.Matching/README.MD rename to SabreTools.Matching/README.MD diff --git a/SabreTools.Matching/SabreTools.Matching.csproj b/SabreTools.Matching/SabreTools.Matching.csproj new file mode 100644 index 0000000..9a23c12 --- /dev/null +++ b/SabreTools.Matching/SabreTools.Matching.csproj @@ -0,0 +1,32 @@ + + + + + net20;net35;net40;net452;net462;net472;net48;netcoreapp3.1;net5.0;net6.0;net7.0;net8.0;net9.0;net10.0;netstandard2.0;netstandard2.1 + true + true + latest + CS0618 + enable + true + snupkg + true + 1.9.1 + + + Matt Nadareski + Common IO utilities by other SabreTools projects + Copyright (c) Matt Nadareski 2019-2025 + https://github.com/SabreTools/ + README.md + https://github.com/SabreTools/SabreTools.IO + git + io reading writing ini csv ssv tsv + MIT + + + + + + + \ No newline at end of file diff --git a/SabreTools.Numerics.Test/SabreTools.Numerics.Test.csproj b/SabreTools.Numerics.Test/SabreTools.Numerics.Test.csproj index 45347d9..6ff2bab 100644 --- a/SabreTools.Numerics.Test/SabreTools.Numerics.Test.csproj +++ b/SabreTools.Numerics.Test/SabreTools.Numerics.Test.csproj @@ -23,7 +23,7 @@ - + \ No newline at end of file diff --git a/SabreTools.IO/SabreTools.Numerics/BothEndian.cs b/SabreTools.Numerics/BothEndian.cs similarity index 100% rename from SabreTools.IO/SabreTools.Numerics/BothEndian.cs rename to SabreTools.Numerics/BothEndian.cs diff --git a/SabreTools.IO/SabreTools.Numerics/BothInt16.cs b/SabreTools.Numerics/BothInt16.cs similarity index 100% rename from SabreTools.IO/SabreTools.Numerics/BothInt16.cs rename to SabreTools.Numerics/BothInt16.cs diff --git a/SabreTools.IO/SabreTools.Numerics/BothInt32.cs b/SabreTools.Numerics/BothInt32.cs similarity index 100% rename from SabreTools.IO/SabreTools.Numerics/BothInt32.cs rename to SabreTools.Numerics/BothInt32.cs diff --git a/SabreTools.IO/SabreTools.Numerics/BothInt64.cs b/SabreTools.Numerics/BothInt64.cs similarity index 100% rename from SabreTools.IO/SabreTools.Numerics/BothInt64.cs rename to SabreTools.Numerics/BothInt64.cs diff --git a/SabreTools.IO/SabreTools.Numerics/BothInt8.cs b/SabreTools.Numerics/BothInt8.cs similarity index 100% rename from SabreTools.IO/SabreTools.Numerics/BothInt8.cs rename to SabreTools.Numerics/BothInt8.cs diff --git a/SabreTools.IO/SabreTools.Numerics/BothUInt16.cs b/SabreTools.Numerics/BothUInt16.cs similarity index 100% rename from SabreTools.IO/SabreTools.Numerics/BothUInt16.cs rename to SabreTools.Numerics/BothUInt16.cs diff --git a/SabreTools.IO/SabreTools.Numerics/BothUInt32.cs b/SabreTools.Numerics/BothUInt32.cs similarity index 100% rename from SabreTools.IO/SabreTools.Numerics/BothUInt32.cs rename to SabreTools.Numerics/BothUInt32.cs diff --git a/SabreTools.IO/SabreTools.Numerics/BothUInt64.cs b/SabreTools.Numerics/BothUInt64.cs similarity index 100% rename from SabreTools.IO/SabreTools.Numerics/BothUInt64.cs rename to SabreTools.Numerics/BothUInt64.cs diff --git a/SabreTools.IO/SabreTools.Numerics/BothUInt8.cs b/SabreTools.Numerics/BothUInt8.cs similarity index 100% rename from SabreTools.IO/SabreTools.Numerics/BothUInt8.cs rename to SabreTools.Numerics/BothUInt8.cs diff --git a/SabreTools.IO/SabreTools.Numerics/Int24.cs b/SabreTools.Numerics/Int24.cs similarity index 100% rename from SabreTools.IO/SabreTools.Numerics/Int24.cs rename to SabreTools.Numerics/Int24.cs diff --git a/SabreTools.IO/SabreTools.Numerics/Int48.cs b/SabreTools.Numerics/Int48.cs similarity index 100% rename from SabreTools.IO/SabreTools.Numerics/Int48.cs rename to SabreTools.Numerics/Int48.cs diff --git a/SabreTools.IO/SabreTools.Numerics/README.MD b/SabreTools.Numerics/README.MD similarity index 100% rename from SabreTools.IO/SabreTools.Numerics/README.MD rename to SabreTools.Numerics/README.MD diff --git a/SabreTools.Numerics/SabreTools.Numerics.csproj b/SabreTools.Numerics/SabreTools.Numerics.csproj new file mode 100644 index 0000000..9a23c12 --- /dev/null +++ b/SabreTools.Numerics/SabreTools.Numerics.csproj @@ -0,0 +1,32 @@ + + + + + net20;net35;net40;net452;net462;net472;net48;netcoreapp3.1;net5.0;net6.0;net7.0;net8.0;net9.0;net10.0;netstandard2.0;netstandard2.1 + true + true + latest + CS0618 + enable + true + snupkg + true + 1.9.1 + + + Matt Nadareski + Common IO utilities by other SabreTools projects + Copyright (c) Matt Nadareski 2019-2025 + https://github.com/SabreTools/ + README.md + https://github.com/SabreTools/SabreTools.IO + git + io reading writing ini csv ssv tsv + MIT + + + + + + + \ No newline at end of file diff --git a/SabreTools.IO/SabreTools.Numerics/UInt24.cs b/SabreTools.Numerics/UInt24.cs similarity index 100% rename from SabreTools.IO/SabreTools.Numerics/UInt24.cs rename to SabreTools.Numerics/UInt24.cs diff --git a/SabreTools.IO/SabreTools.Numerics/UInt48.cs b/SabreTools.Numerics/UInt48.cs similarity index 100% rename from SabreTools.IO/SabreTools.Numerics/UInt48.cs rename to SabreTools.Numerics/UInt48.cs diff --git a/SabreTools.IO/SabreTools.Security.Cryptography/AESCTR.cs b/SabreTools.Security.Cryptography/AESCTR.cs similarity index 100% rename from SabreTools.IO/SabreTools.Security.Cryptography/AESCTR.cs rename to SabreTools.Security.Cryptography/AESCTR.cs diff --git a/SabreTools.IO/SabreTools.Security.Cryptography/MoPaQDecrypter.cs b/SabreTools.Security.Cryptography/MoPaQDecrypter.cs similarity index 100% rename from SabreTools.IO/SabreTools.Security.Cryptography/MoPaQDecrypter.cs rename to SabreTools.Security.Cryptography/MoPaQDecrypter.cs diff --git a/SabreTools.IO/SabreTools.Security.Cryptography/README.MD b/SabreTools.Security.Cryptography/README.MD similarity index 100% rename from SabreTools.IO/SabreTools.Security.Cryptography/README.MD rename to SabreTools.Security.Cryptography/README.MD diff --git a/SabreTools.Security.Cryptography/SabreTools.Security.Cryptography.csproj b/SabreTools.Security.Cryptography/SabreTools.Security.Cryptography.csproj new file mode 100644 index 0000000..b4a10f4 --- /dev/null +++ b/SabreTools.Security.Cryptography/SabreTools.Security.Cryptography.csproj @@ -0,0 +1,42 @@ + + + + + net20;net35;net40;net452;net462;net472;net48;netcoreapp3.1;net5.0;net6.0;net7.0;net8.0;net9.0;net10.0;netstandard2.0;netstandard2.1 + true + true + latest + CS0618 + enable + true + snupkg + true + 1.9.1 + + + Matt Nadareski + Common IO utilities by other SabreTools projects + Copyright (c) Matt Nadareski 2019-2025 + https://github.com/SabreTools/ + README.md + https://github.com/SabreTools/SabreTools.IO + git + io reading writing ini csv ssv tsv + MIT + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/SabreTools.Text.ClrMamePro.Test/SabreTools.Text.ClrMamePro.Test.csproj b/SabreTools.Text.ClrMamePro.Test/SabreTools.Text.ClrMamePro.Test.csproj index 45347d9..e2edc37 100644 --- a/SabreTools.Text.ClrMamePro.Test/SabreTools.Text.ClrMamePro.Test.csproj +++ b/SabreTools.Text.ClrMamePro.Test/SabreTools.Text.ClrMamePro.Test.csproj @@ -23,7 +23,7 @@ - + \ No newline at end of file diff --git a/SabreTools.IO/SabreTools.Text.ClrMamePro/Enums.cs b/SabreTools.Text.ClrMamePro/Enums.cs similarity index 100% rename from SabreTools.IO/SabreTools.Text.ClrMamePro/Enums.cs rename to SabreTools.Text.ClrMamePro/Enums.cs diff --git a/SabreTools.IO/SabreTools.Text.ClrMamePro/README.MD b/SabreTools.Text.ClrMamePro/README.MD similarity index 100% rename from SabreTools.IO/SabreTools.Text.ClrMamePro/README.MD rename to SabreTools.Text.ClrMamePro/README.MD diff --git a/SabreTools.IO/SabreTools.Text.ClrMamePro/Reader.cs b/SabreTools.Text.ClrMamePro/Reader.cs similarity index 100% rename from SabreTools.IO/SabreTools.Text.ClrMamePro/Reader.cs rename to SabreTools.Text.ClrMamePro/Reader.cs diff --git a/SabreTools.Text.ClrMamePro/SabreTools.Text.ClrMamePro.csproj b/SabreTools.Text.ClrMamePro/SabreTools.Text.ClrMamePro.csproj new file mode 100644 index 0000000..9a23c12 --- /dev/null +++ b/SabreTools.Text.ClrMamePro/SabreTools.Text.ClrMamePro.csproj @@ -0,0 +1,32 @@ + + + + + net20;net35;net40;net452;net462;net472;net48;netcoreapp3.1;net5.0;net6.0;net7.0;net8.0;net9.0;net10.0;netstandard2.0;netstandard2.1 + true + true + latest + CS0618 + enable + true + snupkg + true + 1.9.1 + + + Matt Nadareski + Common IO utilities by other SabreTools projects + Copyright (c) Matt Nadareski 2019-2025 + https://github.com/SabreTools/ + README.md + https://github.com/SabreTools/SabreTools.IO + git + io reading writing ini csv ssv tsv + MIT + + + + + + + \ No newline at end of file diff --git a/SabreTools.IO/SabreTools.Text.ClrMamePro/Writer.cs b/SabreTools.Text.ClrMamePro/Writer.cs similarity index 100% rename from SabreTools.IO/SabreTools.Text.ClrMamePro/Writer.cs rename to SabreTools.Text.ClrMamePro/Writer.cs diff --git a/SabreTools.Text.Compare.Test/SabreTools.Text.Compare.Test.csproj b/SabreTools.Text.Compare.Test/SabreTools.Text.Compare.Test.csproj index 45347d9..625d2ab 100644 --- a/SabreTools.Text.Compare.Test/SabreTools.Text.Compare.Test.csproj +++ b/SabreTools.Text.Compare.Test/SabreTools.Text.Compare.Test.csproj @@ -23,7 +23,7 @@ - + \ No newline at end of file diff --git a/SabreTools.IO/SabreTools.Text.Compare/NaturalComparer.cs b/SabreTools.Text.Compare/NaturalComparer.cs similarity index 100% rename from SabreTools.IO/SabreTools.Text.Compare/NaturalComparer.cs rename to SabreTools.Text.Compare/NaturalComparer.cs diff --git a/SabreTools.IO/SabreTools.Text.Compare/NaturalComparerUtil.cs b/SabreTools.Text.Compare/NaturalComparerUtil.cs similarity index 100% rename from SabreTools.IO/SabreTools.Text.Compare/NaturalComparerUtil.cs rename to SabreTools.Text.Compare/NaturalComparerUtil.cs diff --git a/SabreTools.IO/SabreTools.Text.Compare/NaturalReversedComparer.cs b/SabreTools.Text.Compare/NaturalReversedComparer.cs similarity index 100% rename from SabreTools.IO/SabreTools.Text.Compare/NaturalReversedComparer.cs rename to SabreTools.Text.Compare/NaturalReversedComparer.cs diff --git a/SabreTools.IO/SabreTools.Text.Compare/README.MD b/SabreTools.Text.Compare/README.MD similarity index 100% rename from SabreTools.IO/SabreTools.Text.Compare/README.MD rename to SabreTools.Text.Compare/README.MD diff --git a/SabreTools.Text.Compare/SabreTools.Text.Compare.csproj b/SabreTools.Text.Compare/SabreTools.Text.Compare.csproj new file mode 100644 index 0000000..e889aa9 --- /dev/null +++ b/SabreTools.Text.Compare/SabreTools.Text.Compare.csproj @@ -0,0 +1,36 @@ + + + + + net20;net35;net40;net452;net462;net472;net48;netcoreapp3.1;net5.0;net6.0;net7.0;net8.0;net9.0;net10.0;netstandard2.0;netstandard2.1 + true + true + latest + CS0618 + enable + true + snupkg + true + 1.9.1 + + + Matt Nadareski + Common IO utilities by other SabreTools projects + Copyright (c) Matt Nadareski 2019-2025 + https://github.com/SabreTools/ + README.md + https://github.com/SabreTools/SabreTools.IO + git + io reading writing ini csv ssv tsv + MIT + + + + + + + + + + + \ No newline at end of file diff --git a/SabreTools.Text.INI.Test/SabreTools.Text.INI.Test.csproj b/SabreTools.Text.INI.Test/SabreTools.Text.INI.Test.csproj index 45347d9..c785c51 100644 --- a/SabreTools.Text.INI.Test/SabreTools.Text.INI.Test.csproj +++ b/SabreTools.Text.INI.Test/SabreTools.Text.INI.Test.csproj @@ -23,7 +23,7 @@ - + \ No newline at end of file diff --git a/SabreTools.IO/SabreTools.Text.INI/Enums.cs b/SabreTools.Text.INI/Enums.cs similarity index 100% rename from SabreTools.IO/SabreTools.Text.INI/Enums.cs rename to SabreTools.Text.INI/Enums.cs diff --git a/SabreTools.IO/SabreTools.Text.INI/IniFile.cs b/SabreTools.Text.INI/IniFile.cs similarity index 100% rename from SabreTools.IO/SabreTools.Text.INI/IniFile.cs rename to SabreTools.Text.INI/IniFile.cs diff --git a/SabreTools.IO/SabreTools.Text.INI/README.MD b/SabreTools.Text.INI/README.MD similarity index 100% rename from SabreTools.IO/SabreTools.Text.INI/README.MD rename to SabreTools.Text.INI/README.MD diff --git a/SabreTools.IO/SabreTools.Text.INI/Reader.cs b/SabreTools.Text.INI/Reader.cs similarity index 100% rename from SabreTools.IO/SabreTools.Text.INI/Reader.cs rename to SabreTools.Text.INI/Reader.cs diff --git a/SabreTools.Text.INI/SabreTools.Text.INI.csproj b/SabreTools.Text.INI/SabreTools.Text.INI.csproj new file mode 100644 index 0000000..9a23c12 --- /dev/null +++ b/SabreTools.Text.INI/SabreTools.Text.INI.csproj @@ -0,0 +1,32 @@ + + + + + net20;net35;net40;net452;net462;net472;net48;netcoreapp3.1;net5.0;net6.0;net7.0;net8.0;net9.0;net10.0;netstandard2.0;netstandard2.1 + true + true + latest + CS0618 + enable + true + snupkg + true + 1.9.1 + + + Matt Nadareski + Common IO utilities by other SabreTools projects + Copyright (c) Matt Nadareski 2019-2025 + https://github.com/SabreTools/ + README.md + https://github.com/SabreTools/SabreTools.IO + git + io reading writing ini csv ssv tsv + MIT + + + + + + + \ No newline at end of file diff --git a/SabreTools.IO/SabreTools.Text.INI/Writer.cs b/SabreTools.Text.INI/Writer.cs similarity index 100% rename from SabreTools.IO/SabreTools.Text.INI/Writer.cs rename to SabreTools.Text.INI/Writer.cs diff --git a/SabreTools.Text.SeparatedValue.Test/SabreTools.Text.SeparatedValue.Test.csproj b/SabreTools.Text.SeparatedValue.Test/SabreTools.Text.SeparatedValue.Test.csproj index 45347d9..0d9f3f6 100644 --- a/SabreTools.Text.SeparatedValue.Test/SabreTools.Text.SeparatedValue.Test.csproj +++ b/SabreTools.Text.SeparatedValue.Test/SabreTools.Text.SeparatedValue.Test.csproj @@ -23,7 +23,7 @@ - + \ No newline at end of file diff --git a/SabreTools.IO/SabreTools.Text.SeparatedValue/README.MD b/SabreTools.Text.SeparatedValue/README.MD similarity index 100% rename from SabreTools.IO/SabreTools.Text.SeparatedValue/README.MD rename to SabreTools.Text.SeparatedValue/README.MD diff --git a/SabreTools.IO/SabreTools.Text.SeparatedValue/Reader.cs b/SabreTools.Text.SeparatedValue/Reader.cs similarity index 100% rename from SabreTools.IO/SabreTools.Text.SeparatedValue/Reader.cs rename to SabreTools.Text.SeparatedValue/Reader.cs diff --git a/SabreTools.Text.SeparatedValue/SabreTools.Text.SeparatedValue.csproj b/SabreTools.Text.SeparatedValue/SabreTools.Text.SeparatedValue.csproj new file mode 100644 index 0000000..9a23c12 --- /dev/null +++ b/SabreTools.Text.SeparatedValue/SabreTools.Text.SeparatedValue.csproj @@ -0,0 +1,32 @@ + + + + + net20;net35;net40;net452;net462;net472;net48;netcoreapp3.1;net5.0;net6.0;net7.0;net8.0;net9.0;net10.0;netstandard2.0;netstandard2.1 + true + true + latest + CS0618 + enable + true + snupkg + true + 1.9.1 + + + Matt Nadareski + Common IO utilities by other SabreTools projects + Copyright (c) Matt Nadareski 2019-2025 + https://github.com/SabreTools/ + README.md + https://github.com/SabreTools/SabreTools.IO + git + io reading writing ini csv ssv tsv + MIT + + + + + + + \ No newline at end of file diff --git a/SabreTools.IO/SabreTools.Text.SeparatedValue/Writer.cs b/SabreTools.Text.SeparatedValue/Writer.cs similarity index 100% rename from SabreTools.IO/SabreTools.Text.SeparatedValue/Writer.cs rename to SabreTools.Text.SeparatedValue/Writer.cs diff --git a/SabreTools.Text.Utilities.Test/SabreTools.Text.Utilities.Test.csproj b/SabreTools.Text.Utilities.Test/SabreTools.Text.Utilities.Test.csproj index 45347d9..1212344 100644 --- a/SabreTools.Text.Utilities.Test/SabreTools.Text.Utilities.Test.csproj +++ b/SabreTools.Text.Utilities.Test/SabreTools.Text.Utilities.Test.csproj @@ -23,7 +23,7 @@ - + \ No newline at end of file diff --git a/SabreTools.Text.Utilities/ExtensionAttribute.cs b/SabreTools.Text.Utilities/ExtensionAttribute.cs new file mode 100644 index 0000000..478ed8b --- /dev/null +++ b/SabreTools.Text.Utilities/ExtensionAttribute.cs @@ -0,0 +1,9 @@ +#if NET20 + +namespace System.Runtime.CompilerServices +{ + [AttributeUsage(AttributeTargets.Assembly | AttributeTargets.Class | AttributeTargets.Method)] + internal sealed class ExtensionAttribute : Attribute { } +} + +#endif diff --git a/SabreTools.IO/SabreTools.Text.Utilities/NumberHelper.cs b/SabreTools.Text.Utilities/NumberHelper.cs similarity index 100% rename from SabreTools.IO/SabreTools.Text.Utilities/NumberHelper.cs rename to SabreTools.Text.Utilities/NumberHelper.cs diff --git a/SabreTools.IO/SabreTools.Text.Utilities/README.MD b/SabreTools.Text.Utilities/README.MD similarity index 100% rename from SabreTools.IO/SabreTools.Text.Utilities/README.MD rename to SabreTools.Text.Utilities/README.MD diff --git a/SabreTools.Text.Utilities/SabreTools.Text.Utilities.csproj b/SabreTools.Text.Utilities/SabreTools.Text.Utilities.csproj new file mode 100644 index 0000000..76297ed --- /dev/null +++ b/SabreTools.Text.Utilities/SabreTools.Text.Utilities.csproj @@ -0,0 +1,43 @@ + + + + + net20;net35;net40;net452;net462;net472;net48;netcoreapp3.1;net5.0;net6.0;net7.0;net8.0;net9.0;net10.0;netstandard2.0;netstandard2.1 + true + true + latest + CS0618 + enable + true + snupkg + true + 1.9.1 + + + Matt Nadareski + Common IO utilities by other SabreTools projects + Copyright (c) Matt Nadareski 2019-2025 + https://github.com/SabreTools/ + README.md + https://github.com/SabreTools/SabreTools.IO + git + io reading writing ini csv ssv tsv + MIT + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/SabreTools.IO/SabreTools.Text.Utilities/TextHelper.cs b/SabreTools.Text.Utilities/TextHelper.cs similarity index 100% rename from SabreTools.IO/SabreTools.Text.Utilities/TextHelper.cs rename to SabreTools.Text.Utilities/TextHelper.cs diff --git a/publish-nix.sh b/publish-nix.sh index 62bc5d1..ba02507 100755 --- a/publish-nix.sh +++ b/publish-nix.sh @@ -32,5 +32,5 @@ then dotnet restore # Create Nuget Package - dotnet pack SabreTools.IO/SabreTools.IO.csproj --output $BUILD_FOLDER + dotnet pack SabreTools.IO.Meta/SabreTools.IO.Meta.csproj --output $BUILD_FOLDER fi \ No newline at end of file diff --git a/publish-win.ps1 b/publish-win.ps1 index 8d338b3..638fadd 100644 --- a/publish-win.ps1 +++ b/publish-win.ps1 @@ -22,5 +22,5 @@ if (!$NO_BUILD.IsPresent) dotnet restore # Create Nuget Package - dotnet pack SabreTools.IO\SabreTools.IO.csproj --output $BUILD_FOLDER + dotnet pack SabreTools.IO.Meta\SabreTools.IO.Meta.csproj --output $BUILD_FOLDER }