30 lines
356 B
Go
30 lines
356 B
Go
package main
|
|
|
|
import (
|
|
"fmt"
|
|
"os"
|
|
)
|
|
|
|
type notFoundError struct {
|
|
ref string
|
|
}
|
|
|
|
func (e notFoundError) Error() string {
|
|
return fmt.Sprintf("not found: %s", e.ref)
|
|
}
|
|
|
|
var _ error = notFoundError{}
|
|
|
|
func isNotFound(err error) bool {
|
|
if err == nil {
|
|
return false
|
|
}
|
|
|
|
if os.IsNotExist(err) {
|
|
return true
|
|
}
|
|
|
|
_, ok := err.(notFoundError)
|
|
return ok
|
|
}
|