See the version list below for details.
Install-Package CallMeMaybe -Version 0.1.5178
dotnet add package CallMeMaybe --version 0.1.5178
<PackageReference Include="CallMeMaybe" Version="0.1.5178" />
paket add CallMeMaybe --version 0.1.5178
#r "nuget: CallMeMaybe, 0.1.5178"
// Install CallMeMaybe as a Cake Addin #addin nuget:?package=CallMeMaybe&version=0.1.5178 // Install CallMeMaybe as a Cake Tool #tool nuget:?package=CallMeMaybe&version=0.1.5178
Provides a class and a few extension methods to facilitate common operations with values that may or may not exist.
Traditionally, programmers often use `null` references to represent values that "aren't there", but the problem is that this was never their intended purpose.
- Languages like C# don't provide a way to differentiate between reference variables that can be null and those that are guaranteed not to be.
- The inventor of null references has [apologized](http://en.wikipedia.org/wiki/Tony_Hoare#Quotations) for creating them in the first place, calling them his "billion-dollar mistake."
- This misuse of null references has spread far and wide, leading to the unfortunately-named `Nullable<>` type (which, being a value type, is never actually null), and attributes like `[CanBeNull]` and `[NotNull]` to help programmers know when they can expect a method to treat a null value as legitimate input.
All this leaves us in a position where our best hope of avoiding `NullReferenceException`s lies in trying to make sure that our reference variables are *never* null. But in that case, how do we indicate when a value is *optional*?
Well, that's where `Maybe<>` comes in.
This package has no dependencies.
NuGet packages (1)
Showing the top 1 NuGet packages that depend on CallMeMaybe:
Some usage samples to help you get the hang of the Maybe<> type and associated extension methods which are available in the CallMeMaybe library.
This package is not used by any popular GitHub repositories.
v 0.1 Alpha release. API subject to change.