SpanExtensions.Net
1.0.0
See the version list below for details.
dotnet add package SpanExtensions.Net --version 1.0.0
NuGet\Install-Package SpanExtensions.Net -Version 1.0.0
<PackageReference Include="SpanExtensions.Net" Version="1.0.0" />
<PackageVersion Include="SpanExtensions.Net" Version="1.0.0" />
<PackageReference Include="SpanExtensions.Net" />
paket add SpanExtensions.Net --version 1.0.0
#r "nuget: SpanExtensions.Net, 1.0.0"
#:package SpanExtensions.Net@1.0.0
#addin nuget:?package=SpanExtensions.Net&version=1.0.0
#tool nuget:?package=SpanExtensions.Net&version=1.0.0
SpanExtensions
About
ReadonlySpan<T> and Span<T> are great Types in C#, but unfortunately working with them can sometimes be sort of a hassle and some use cases seem straight up impossible, even though they are not.
SpanExtensions.Net aims to help developers use ReadonlySpan<T> and Span<T> more productively, efficiently and safely and write overall more performant Programs.
Never again switch back to using string instead of ReadonlySpan<T>, just because the method you seek is not supported.
SpanExtensions.Net provides alternatives for many missing Extension Methods for ReadonlySpan<T> and Span<T>, ranging from string.Split() over Enumerable.Skip() and Enumerable.Take() to an improved ReadOnlySpan<T>.IndexOf().
Methods
The following Extension Methods are contained:
String Methods made available for ReadonlySpan<T> and Span<T>:
(ReadOnly-)Span<T>.Split(T delimiter)(ReadOnly-)Span<T>.Split(T delimiter, int count)(ReadOnly-)Span<T>.Split(T delimiter, StringSplitOptions options)(ReadOnly-)Span<T>.Split(T delimiter, StringSplitOptions options, int count)(ReadOnly-)Span<T>.Split(ReadOnlySpan<T> delimiters)(ReadOnly-)Span<T>.Split(ReadOnlySpan<T> delimiters, int count)(ReadOnly-)Span<T>.Split(ReadOnlySpan<T> delimiters, StringSplitOptions options)(ReadOnly-)Span<T>.Split(ReadOnlySpan<T> delimiters, StringSplitOptions options, int count)(ReadOnly-)Span<T>.SplitAny(ReadOnlySpan<T> delimiters)(ReadOnly-)Span<T>.SplitAny(ReadOnlySpan<T> delimiters, int count)(ReadOnly-)Span<T>.SplitAny(ReadOnlySpan<T> delimiters, StringSplitOptions options)(ReadOnly-)Span<T>.SplitAny(ReadOnlySpan<T> delimiters, StringSplitOptions options, int count)(ReadOnly-)Span<T>.Remove(int startIndex)Span<T>.Replace(T oldT, T newT)
Linq Methods made available for ReadonlySpan<T> and Span<T>:
(ReadOnly-)Span<T>.All(Predicate<T> predicate)(ReadOnly-)Span<T>.Any(Predicate<T> predicate)(ReadOnly-)Span<T>.Average()(ReadOnly-)Span<T>.Sum()(ReadOnly-)Span<T>.Skip(int count)(ReadOnly-)Span<T>.Take(int count)(ReadOnly-)Span<T>.SkipLast(int count)(ReadOnly-)Span<T>.Takelast(int count)
Contributing
Thank you for your interest in contributing to this project! - You may contribute on Github.
License
Copyright (c) draconware-dev. All rights reserved.
Licensed under the MIT license.
| Product | Versions 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. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
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.
First Release