TedToolkit.Annotations.Assertions
2026.7.16.3
dotnet add package TedToolkit.Annotations.Assertions --version 2026.7.16.3
NuGet\Install-Package TedToolkit.Annotations.Assertions -Version 2026.7.16.3
<PackageReference Include="TedToolkit.Annotations.Assertions" Version="2026.7.16.3" />
<PackageVersion Include="TedToolkit.Annotations.Assertions" Version="2026.7.16.3" />
<PackageReference Include="TedToolkit.Annotations.Assertions" />
paket add TedToolkit.Annotations.Assertions --version 2026.7.16.3
#r "nuget: TedToolkit.Annotations.Assertions, 2026.7.16.3"
#:package TedToolkit.Annotations.Assertions@2026.7.16.3
#addin nuget:?package=TedToolkit.Annotations.Assertions&version=2026.7.16.3
#tool nuget:?package=TedToolkit.Annotations.Assertions&version=2026.7.16.3
TedToolkit.Annotations.Assertions
Document assertion-backed preconditions with attributes generated from
TedToolkit.Assertions assertion items.
Install
dotnet add package TedToolkit.Annotations.Assertions
The package includes an analyzer that generates a *PreconditionAttribute for
each assertion item. Attribute-compatible assertion parameters keep their
original types; other parameters are represented as string.
For a generic assertion item, the generator emits both a generic attribute that
accepts the generic value and a non-generic attribute that accepts its string
representation. Both forms end with an optional Type exception parameter.
Use
Reference TedToolkit.Assertions and declare assertion items as usual. The bundled source generator discovers each IAssertionItem<T> and makes the matching precondition attribute available on parameters:
public void SetLimit([BeGreaterThanPrecondition(0)] int limit)
{
}
The bundled analyzer reports a parameter precondition that is not enforced by the method body, and its code fix adds the corresponding assertion. Generated attributes derive from AssertionPreconditionAttribute, which in turn is a PreconditionAttribute from TedToolkit.Annotations.Documentations.
Compatibility
Targets .NET 6.0 through .NET 10.0, .NET Framework 4.7.2 and 4.8, and .NET Standard 2.0 and 2.1. TedToolkit.Assertions and TedToolkit.Annotations.Documentations are package dependencies.
Related documentation
License
Licensed under the GNU Lesser General Public License v3.0.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. 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 is compatible. 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 is compatible. 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 is compatible. 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. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 is compatible. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 is compatible. net48 is compatible. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETFramework 4.7.2
- TedToolkit.Annotations.Documentations (>= 2026.7.16.3)
- TedToolkit.Assertions (>= 2026.7.7)
-
.NETFramework 4.8
- TedToolkit.Annotations.Documentations (>= 2026.7.16.3)
- TedToolkit.Assertions (>= 2026.7.7)
-
.NETStandard 2.0
- TedToolkit.Annotations.Documentations (>= 2026.7.16.3)
- TedToolkit.Assertions (>= 2026.7.7)
-
.NETStandard 2.1
- TedToolkit.Annotations.Documentations (>= 2026.7.16.3)
- TedToolkit.Assertions (>= 2026.7.7)
-
net10.0
- TedToolkit.Annotations.Documentations (>= 2026.7.16.3)
- TedToolkit.Assertions (>= 2026.7.7)
-
net6.0
- TedToolkit.Annotations.Documentations (>= 2026.7.16.3)
- TedToolkit.Assertions (>= 2026.7.7)
-
net7.0
- TedToolkit.Annotations.Documentations (>= 2026.7.16.3)
- TedToolkit.Assertions (>= 2026.7.7)
-
net8.0
- TedToolkit.Annotations.Documentations (>= 2026.7.16.3)
- TedToolkit.Assertions (>= 2026.7.7)
-
net9.0
- TedToolkit.Annotations.Documentations (>= 2026.7.16.3)
- TedToolkit.Assertions (>= 2026.7.7)
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 |
|---|---|---|
| 2026.7.16.3 | 91 | 7/16/2026 |