Y
Hacker News
new
|
ask
|
show
|
jobs
by
Thaxll
898 days ago
I've never seen or used reflection with error handling in Go, what do you mean?
1 comments
sidlls
898 days ago
https://cs.opensource.google/go/go/+/refs/tags/go1.21.6:src/...
link
derekperkins
898 days ago
I wouldn't classify type assertion as reflection. It's a super fast type check of the object header, not dynamic reflection.
link
Thaxll
898 days ago
But this is a detail of implementation, user code does not use reflection with errors.
link
sidlls
898 days ago
That "detail of implementation" is what is used by user code, e.g., `myError.As(...)` uses reflection, implicitly.
link
Thaxll
898 days ago
Then what? It has 0 performance impact, we're talking about error handling here, it's rare and not in hot path.
link
sidlls
897 days ago
It does not have 0 performance impact, it's not rare, and in applications that are in the hot path, error handling is
also
in the hot path.
link
Thaxll
897 days ago
No, it only executes when you enter the err != nil block so it's almost never called, again 0 impact on performance.
link