diff options
| author | Julien Cretel <jub0bsinthecloud@gmail.com> | 2025-09-29 16:57:53 +0000 |
|---|---|---|
| committer | Damien Neil <dneil@google.com> | 2025-09-30 10:22:08 -0700 |
| commit | a846bb0aa523c8781248161b63bc2ab6a245cec1 (patch) | |
| tree | c43a403c0e8fde2fd9c6019428cddc74710cf4e5 /src/errors/example_test.go | |
| parent | 7c8166d02d36a5dfcdbe3dd1b148412cceacf9f2 (diff) | |
| download | go-a846bb0aa523c8781248161b63bc2ab6a245cec1.tar.xz | |
errors: add AsType
Fixes #51945
Change-Id: Icda169782e796578eba728938134a85b5827d3b6
GitHub-Last-Rev: c6ff335ee1ffb6b7975141795a4632a55247299d
GitHub-Pull-Request: golang/go#75621
Reviewed-on: https://go-review.googlesource.com/c/go/+/707235
Reviewed-by: Carlos Amedee <carlos@golang.org>
Reviewed-by: Damien Neil <dneil@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Sean Liao <sean@liao.dev>
Diffstat (limited to 'src/errors/example_test.go')
| -rw-r--r-- | src/errors/example_test.go | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/errors/example_test.go b/src/errors/example_test.go index 278df8c7da..92ef36b101 100644 --- a/src/errors/example_test.go +++ b/src/errors/example_test.go @@ -102,6 +102,18 @@ func ExampleAs() { // Failed at path: non-existing } +func ExampleAsType() { + if _, err := os.Open("non-existing"); err != nil { + if pathError, ok := errors.AsType[*fs.PathError](err); ok { + fmt.Println("Failed at path:", pathError.Path) + } else { + fmt.Println(err) + } + } + // Output: + // Failed at path: non-existing +} + func ExampleUnwrap() { err1 := errors.New("error1") err2 := fmt.Errorf("error2: [%w]", err1) |
