|
6 | 6 | <Nullable>enable</Nullable> |
7 | 7 | <GeneratePackageOnBuild>true</GeneratePackageOnBuild> |
8 | 8 | <PackageId>Intervals.NET</PackageId> |
9 | | - <Version>0.0.1</Version> |
| 9 | + <Version>0.0.2</Version> |
10 | 10 | <Authors>blaze6950</Authors> |
11 | 11 | <Description>Production-ready .NET library for type-safe mathematical intervals and ranges. Zero-allocation struct-based design with comprehensive set operations (intersection, union, contains, overlaps), explicit infinity support, span-based parsing, and custom interpolated string handler. Generic over IComparable<T> with 100% test coverage. Built for correctness and performance.</Description> |
12 | | - <PackageReleaseNotes>🎉 Initial Release (v0.0.1): |
13 | | - |
14 | | -✨ Core Features: |
15 | | -- Type-safe range operations with all boundary types: [a,b], (a,b), [a,b), (a,b] |
16 | | -- Rich API: Overlaps, Contains, Intersect, Union, Except, IsAdjacent, IsBefore, IsAfter |
17 | | -- Explicit infinity support with RangeValue<T> (no nullable confusion) |
18 | | -- Zero-allocation struct-based design (all operations stack-allocated) |
19 | | - |
20 | | -⚡ Performance: |
21 | | -- 3.6× faster parsing with interpolated string handler |
22 | | -- 1.7× faster containment checks vs naive implementations |
23 | | -- Zero heap allocations for all set operations |
24 | | -- Span-based parsing with ReadOnlySpan<char> |
25 | | - |
26 | | -🎯 Developer Experience: |
27 | | -- Generic over any IComparable<T> (int, double, DateTime, custom types) |
28 | | -- Comprehensive extension methods for fluent API |
29 | | -- Culture-aware parsing with IFormatProvider support |
30 | | -- Infinity symbol support (∞, -∞) in string parsing |
31 | | -- Full XML documentation and IntelliSense |
32 | | - |
33 | | -🛡️ Quality: |
34 | | -- 100% test coverage |
35 | | -- Fail-fast validation with comprehensive edge case handling |
36 | | -- Production-ready correctness over raw speed |
37 | | -- .NET 8.0 target with modern C# features</PackageReleaseNotes> |
| 12 | + <PackageReleaseNotes>Range record was updated by making all properties as init in order to allow the creation of new Range struct using the with keyword</PackageReleaseNotes> |
38 | 13 | <PackageTags>range;interval;math;mathematics;intervals;ranges;span;performance;zero-allocation;generic;comparable;infinity;parsing;set-operations;intersection;union;datetime;numeric</PackageTags> |
39 | 14 | <RepositoryUrl>https://github.com/blaze6950/Intervals.NET</RepositoryUrl> |
40 | 15 | <PackageProjectUrl>https://github.com/blaze6950/Intervals.NET</PackageProjectUrl> |
|
0 commit comments