فهرست منبع

feat: 添加README

SongZihuan 1 سال پیش
والد
کامیت
d2fc1e2d14
2فایلهای تغییر یافته به همراه52 افزوده شده و 0 حذف شده
  1. 21 0
      README.md
  2. 31 0
      sample/sample1.go

+ 21 - 0
README.md

@@ -0,0 +1,21 @@
+# 桓创错误处理包
+## 简介
+错误由class派生,具有code,msg,cause,stack属性。
+
+### code
+表示错误类型,一般由class定义。
+
+### msg
+具体的错误,`.Error()`和`.Message`返回相同。
+
+### cause
+上级错误原因。
+
+### stack
+错误堆栈。
+
+## 默认的class
+默认的class是base,可以使用`errors.Errorf`和`errors.New`快速创建。
+
+## 案例
+见`sample`目录下

+ 31 - 0
sample/sample1.go

@@ -0,0 +1,31 @@
+package main
+
+import (
+	"fmt"
+	errors "github.com/wuntsong/wterrors"
+)
+
+var ErrClass1 = errors.NewClass("class 1")
+
+func main() {
+	_ = errors.New() // 创建错误
+	_ = errors.New("简短Message")
+
+	_ = errors.Errorf("支持printf格式:%d", 10)
+
+	_ = errors.WarpQuick(fmt.Errorf("go内置错误")) // 快速封装go内置错误
+
+	test := errors.New().Warp("包含一层原因")
+
+	_ = test.Message()
+	_ = test.Code()
+	_ = test.Cause()
+	_ = test.Class()
+	_ = test.Stack()
+
+	_ = ErrClass1.New() // class也能做上述操作
+	_ = ErrClass1.Errorf("")
+	_ = ErrClass1.WarpQuick(fmt.Errorf(""))
+
+	_ = errors.Is(test, ErrClass1) // 可以比较class和err
+}