Shuttle.Core.Contract
11.1.1
Prefix Reserved
dotnet add package Shuttle.Core.Contract --version 11.1.1
NuGet\Install-Package Shuttle.Core.Contract -Version 11.1.1
<PackageReference Include="Shuttle.Core.Contract" Version="11.1.1" />
paket add Shuttle.Core.Contract --version 11.1.1
#r "nuget: Shuttle.Core.Contract, 11.1.1"
// Install Shuttle.Core.Contract as a Cake Addin #addin nuget:?package=Shuttle.Core.Contract&version=11.1.1 // Install Shuttle.Core.Contract as a Cake Tool #tool nuget:?package=Shuttle.Core.Contract&version=11.1.1
Shuttle.Core.Contract
PM> Install-Package Shuttle.Core.Contract
A guard implementation that performs assertions/assumptions to prevent invalid code execution.
Guard
void Against<TException>(bool assertion, string message)
where TException : Exception
Throws exception TException
with the given message
if the assertion
is false. If exception type TException
does not have a constructor that accepts a message
then an InvalidOperationException
is thrown instead.
T AgainstNull<T>(T value, string name)
Throws a NullReferenceException
if the given value
is null
; else returns the value
.
string AgainstNullOrEmptyString(string value, string name)
Throws a NullReferenceException
if the given value
is null
or empty/whitespace; else returns the value
.
TEnum AgainstUndefinedEnum<TEnum>(object value, string name)
Throws an InvalidOperationException
if the provided value
cannot be found in the given TEnum
; else returns the value
as TEnum
.
IEnumerable<T> AgainstEmptyEnumerable<T>(IEnumerable<T> enumerable, string name)
Throws an InvalidOperationException
if the given enumerable
does not contain any entries; else returns the enumerable
.
public static void AgainstEmptyGuid(Guid value, string name)
Throws and ArgumentException
when the value
is equal to an empty Guid
({00000000-0000-0000-0000-000000000000}
); else returns the value
.
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 was computed. 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. |
.NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.1 is compatible. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
This package has no dependencies.
NuGet packages (33)
Showing the top 5 NuGet packages that depend on Shuttle.Core.Contract:
Package | Downloads |
---|---|
Shuttle.Esb
Contains the core Shuttle.Esb assembly that should always be referenced when building Shuttle.Esb solutions. |
|
Shuttle.Core.Logging
Logging adapter. |
|
Shuttle.Core.Reflection
Reflection infrastructure components. |
|
Shuttle.Core.Threading
Thread-based processing. |
|
Shuttle.Core.Serialization
Serialization adapter. |
GitHub repositories
This package is not used by any popular GitHub repositories.