private Maybe(T value) { _option = Option <T> .Some(value); _correctlyCreated = true; }
private Maybe(Option <T> option) { _option = option; _correctlyCreated = (object)option != null; }
// ReSharper disable once UnusedParameter.Local - unused "_" parameter needed to satisfy "cannot declare // constructor with no parameters in structs" C# language rule. private Maybe(None _) { _option = Option <T> .None(); _correctlyCreated = true; }