using System.Collections.Generic;
private readonly T value;
private readonly bool hasValue;
public static implicit operator Maybe<T>(T value)
return value == null ? new Maybe<T>() : new Maybe<T>(value);
private static Maybe<byte> OK()
private static Maybe<IEnumerable<byte>> NotOK()
IEnumerable<byte> a = new byte[] { 1, 2 };