123456789101112131415161718192021 |
- package errorx
- import "sync/atomic"
- // AtomicError defines an atomic error.
- type AtomicError struct {
- err atomic.Value // error
- }
- // Set sets the error.
- func (ae *AtomicError) Set(err error) {
- ae.err.Store(err)
- }
- // Load returns the error.
- func (ae *AtomicError) Load() error {
- if v := ae.err.Load(); v != nil {
- return v.(error)
- }
- return nil
- }
|