Implemented a `slice` method in `SlicedByteArray` to allow creating sub-arrays with specified offset and length. Added validations to handle invalid inputs and bounds. Introduced `SliceTest` to cover standard, edge cases, and error scenarios. Bumped version to 0.3.2.
Enhanced `TypedByteArray` with detailed KDoc comments to clarify its purpose, structure, and usage. Included example usage and descriptions for key properties.
Introduced `Little-Endian` functionality for `Short`, `Int`, `Long`, `Float`, and `Double` across `SlicedByteArray`, `MutableByteArrayHandler`, and `TypedByteArray`. Enhanced property delegates to handle little-endian byte order with the `littleEndian` parameter. Added `LittleEndianTest` to validate functionality. Bumped version to 0.3.0-SNAPSHOT.
Upgraded Kotlin Multiplatform plugin to version 2.1.20 for better compatibility and feature enhancements. Adjusted .gitignore to include `.idea/**` for broader IntelliJ configuration exclusion. Increased test iteration count in `TestCachedString` to improve benchmarking precision.
Corrected the `size` property in `SlicedByteArray` to account for offset. Bumped the version to 0.2.7 and added a custom Maven repository to the build script. Adjusted the `settings.gradle.kts` file to clean up formatting.
Introduce a new constructor in `SlicedByteArray` for initializing from a ByteArray. Updated `build.gradle.kts` to bump the version to 0.2.6, and made minor adjustments to `readme.md` to improve clarity and consistency.
Relocated MutableByteArrayHandler implementation to correct position in ByteArrayHandler file for better organization. Updated readme to clarify behavior when updating variable-length types like strings for improved compression efficiency.
Correct the expected values in assertions to match the updated data structure. This ensures the test accurately reflects the intended behavior of the `Data` object, maintaining consistency with any recent changes in the data format or handling.
Removed the ByteArrayPropertyWithLength class and refactored related methods to simplify the handling of string and blob properties without maxLength constraints. This change improves code maintainability by eliminating redundant checks and ensures that property operations are more straightforward and error-free. Additionally, updated the Kotlin version and optimized the build configuration for better dependency management.
Removed the ByteArrayPropertyWithLength class and refactored related methods to simplify the handling of string and blob properties without maxLength constraints. This change improves code maintainability by eliminating redundant checks and ensures that property operations are more straightforward and error-free. Additionally, updated the Kotlin version and optimized the build configuration for better dependency management.