Hacker News new | ask | show | jobs
by premium-concern 3514 days ago

  (int64, error)
gives you exactly four possibilities.

Either gives you exactly the two you want.

1 comments

Please feel free to enumerate them.

  (value, no error)
  (value, error)
  (no value, error)
  (no value, no error)
The convention is that if the err == nil then the value is not nil. The exceptions to this rule are very few and usually specified in the documentation. Normally you only have to check for error.
The fact that it's a convention, and not a compiler error is the entire issue at debate here.
There is no "no value" representation for int64. The only two cases are "<int64>, nil" or "<int64>, <error>".