Bitvantage.NumericRange 1.0.0

Prefix Reserved
dotnet add package Bitvantage.NumericRange --version 1.0.0                
NuGet\Install-Package Bitvantage.NumericRange -Version 1.0.0                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Bitvantage.NumericRange" Version="1.0.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Bitvantage.NumericRange --version 1.0.0                
#r "nuget: Bitvantage.NumericRange, 1.0.0"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Bitvantage.NumericRange as a Cake Addin
#addin nuget:?package=Bitvantage.NumericRange&version=1.0.0

// Install Bitvantage.NumericRange as a Cake Tool
#tool nuget:?package=Bitvantage.NumericRange&version=1.0.0                

Bitvantage.NumericRange

Parse and manulipulate huge lists of numeric ranges such as 40-70,90,95,300-700,5000.

Installing via NuGet Package Manager

PM> NuGet\Install-Package Bitvantage.NumericRange

Quick Start

var range = NumericRange.Parse("40-70,90,95,300-700,702,5000");
range.Add(701);							// 40-70,90,95,300-702,5000
range.Add(1000,2000);					// 40-70,90,95,300-702,1000-2000,5000
range.Remove(80,100);					// 40-70,300-702,1000-2000,5000
range.Remove(1500);						// 40-70,300-702,1000-1499,1501-2000,5000

range.Contains(500);					// true;
range.Contains(800);					// false;

Console.WriteLine(range.ToString());	// 40-70,300-702,1000-1499,1501-2000,5000

Performance

Internally ranges are stored in a red black tree, the search time of red black trees is O(log n).

Product Compatible and additional computed target framework versions.
.NET net7.0 is compatible.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net7.0

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.0.0 122 6/29/2024