sample1.go 654 B

12345678910111213141516171819202122232425262728293031
  1. package main
  2. import (
  3. "fmt"
  4. errors "github.com/wuntsong/wterrors"
  5. )
  6. var ErrClass1 = errors.NewClass("class 1")
  7. func main() {
  8. _ = errors.New() // 创建错误
  9. _ = errors.New("简短Message")
  10. _ = errors.Errorf("支持printf格式:%d", 10)
  11. _ = errors.WarpQuick(fmt.Errorf("go内置错误")) // 快速封装go内置错误
  12. test := errors.New().Warp("包含一层原因")
  13. _ = test.Message()
  14. _ = test.Code()
  15. _ = test.Cause()
  16. _ = test.Class()
  17. _ = test.Stack()
  18. _ = ErrClass1.New() // class也能做上述操作
  19. _ = ErrClass1.Errorf("")
  20. _ = ErrClass1.WarpQuick(fmt.Errorf(""))
  21. _ = errors.Is(test, ErrClass1) // 可以比较class和err
  22. }