You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+5-2Lines changed: 5 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -16,8 +16,11 @@ For example, classes and structs in C# cannot have ignored members when marshall
16
16
The `EndianBinaryPrimitives` static class which resembles `System.Buffers.Binary.BinaryPrimitives` is an API that converts to/from data types using `Span<T>`/`ReadOnlySpan<T>` with specific endianness, rather than streams.
17
17
18
18
----
19
-
## Changelog For v2.0.0.0
20
-
Be sure to check the comment at https://github.com/Kermalis/EndianBinaryIO/pull/28!
19
+
## Changelog For v2.0.1
20
+
Check the comment on [the release page](https://github.com/Kermalis/EndianBinaryIO/releases/tag/v2.0.1)!
21
+
22
+
## Changelog For v2.0.0
23
+
Check the comment on [the release page](https://github.com/Kermalis/EndianBinaryIO/releases/tag/v2.0.0)!
<PackageReleaseNotes>* Rewritten with Span<T> and performance in mind. No allocations unless absolutely necessary
32
-
* The compiler will now inline certain methods. For example, ReadEnum<TEnum>() will only include code that will be executed for the given enum size. So passing a TEnum that is the size of a byte will condense down to just a ReadByte() call with no size/type checks
33
-
* Implemented reading and writing for Half, DateOnly, TimeOnly, Vector2, Vector3, Vector4, Quaternion, and Matrix4x4
34
-
* Removed bloated overloads (with array offset/count, alternate Encoding/BooleanSize, null termination, etc.). The reader/writer now respects its state (such as whether to use ASCII, and which BooleanSize to use) which you can change at any time
35
-
* decimal int order now matches with .net APIs
36
-
* Removed EndianBitConverter in favor of EndianBinaryPrimitives, which has similar API while using modern programming like Span<T>
37
-
* API uses nullable notations
38
-
* You can now ReadObject() and WriteObject() with primitives and other supported types like DateTime, Vector3, etc.
39
-
* Removed Encoding usage. The whole thing was very complicated before, and it barely functioned. Now you have ASCII and .net (UTF16-LE) support by default, and can add your own requirements either by extension methods or inheriting the reader/writer</PackageReleaseNotes>
31
+
<PackageReleaseNotes>Version 2.0.1 Changelog:
32
+
* Added TrimNullTerminators(ref char[] chars) and TrimNullTerminators(ref Span<char> chars) to EndianBinaryPrimitives which will remove all '\0' from the end
33
+
* Added ReadSBytes(ReadOnlySpan<byte> src, Span<sbyte> dest) and WriteSBytes(Span<byte> dest, ReadOnlySpan<sbyte> src) to EndianBinaryPrimitives
34
+
* Added heavily optimized enum methods to EndianBinaryPrimitives that use the same optimization techniques as the ones in EndianBinaryReader and EndianBinaryWriter
35
+
* Added PeekBytes(Span<byte> dest) to EndianBinaryReader
36
+
37
+
No breaking changes from v2.0.0</PackageReleaseNotes>
0 commit comments