7.8 The error
Interface
Since the beginning of this book, we’ve been using and creating values
of the mysterious predeclared error
type without explaining what
it really is.
In fact, it’s just an interface type with a single method that returns
an error message:
type error interface { Error() string }
The simplest way to create an error
is by calling
errors.New
, which returns a new error
for a given error
message.
The entire errors
package is only four lines long:
package errors func New(text string) error { return &errorString{text} } type errorString struct { text string } func (e *errorString) Error() string { return e.text }
The underlying type of errorString
is a struct, not a string, to protect its ...
Get The Go Programming Language now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.