Creates a Union0 wrapping a value
@param single the value @return a Union0 object wrapping the value
@override Union0<Result> first(Result result) => Union0First<Result>(result);