A Result<T> that can only contain successful values doesn't seem very useful
int x = default; // x becomes zero T x = default; // x becomes whatever the default value for struct is