Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

You can also constrain a generic type only to value types in C#:

  class Result<T> where T: struct
  {
  ...
  }
In that case it can't be null with C# either.


Then you can't construct it unless it's successful, no?

A Result<T> that can only contain successful values doesn't seem very useful


You can, it's possible to address "missing values" with a default construct. Example:

  int x = default; // x becomes zero
  T x = default; // x becomes whatever the default value for struct is


Then we're back to accessing that value being an enormous footgun, yes?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: