From 8fbcdfd5151e1175cfbd0038c4bb4a24b363bd03 Mon Sep 17 00:00:00 2001 From: dudaodong Date: Sun, 2 Jul 2023 21:06:10 +0800 Subject: [PATCH] doc: add pointer and tuple package to readme file --- README.md | 124 ++++++++++++++++++++++++++++++++++++++++++------ README_zh-CN.md | 124 ++++++++++++++++++++++++++++++++++++++++++------ 2 files changed, 219 insertions(+), 29 deletions(-) diff --git a/README.md b/README.md index 2a7bf57..1dae638 100644 --- a/README.md +++ b/README.md @@ -24,7 +24,7 @@ English | [简体中文](./README_zh-CN.md) ## Feature - 👏 Comprehensive, efficient and reusable. -- 💪 500+ go util functions, support string, slice, datetime, net, crypt... +- 💪 600+ go util functions, support string, slice, datetime, net, crypt... - 💅 Only depends on two kinds of libraries: go standard library and golang.org/x. - 🌍 Unit test for every exported function. @@ -289,7 +289,6 @@ import "github.com/duke-git/lancet/v2/convertor" [[doc](https://github.com/duke-git/lancet/blob/main/docs/convertor.md#GbkToUtf8)] [[play](https://go.dev/play/p/OphmHCN_9u8)] - ### 6. Cryptor package is for data encryption and decryption. ```go @@ -508,7 +507,6 @@ import "github.com/duke-git/lancet/v2/datetime" [[doc](https://github.com/duke-git/lancet/blob/main/docs/datetime.md#IsWeekend)] [[play](https://go.dev/play/p/cupRM5aZOIY)] - ### 8. Datastructure package constains some common data structure. eg. list, linklist, stack, queue, set, tree, graph. ```go @@ -624,7 +622,6 @@ import "github.com/duke-git/lancet/v2/fileutil" [[doc](https://github.com/duke-git/lancet/blob/main/docs/fileutil.md#WriteStringToFile)] [[play](https://go.dev/play/p/GhLS6d8lH_g)] - ### 10. Formatter contains some functions for data formatting. ```go @@ -844,7 +841,6 @@ import "github.com/duke-git/lancet/v2/mathutil" [[doc](https://github.com/duke-git/lancet/blob/main/docs/mathutil.md#Sum)] [[play](https://go.dev/play/p/1To2ImAMJA7)] - ### 14. Netutil package contains functions to get net information and send http request. ```go @@ -918,7 +914,25 @@ import "github.com/duke-git/lancet/v2/netutil" [[doc](https://github.com/duke-git/lancet/blob/main/docs/netutil.md#IsTelnetConnected)] [[play](https://go.dev/play/p/yiLCGtQv_ZG)] -### 15. Random package implements some basic functions to generate random int and string. +### 15. Pointer package contains some util functions to operate go pointer. + +```go +import "github.com/duke-git/lancet/v2/pointer" +``` + +#### Function list: + +- **ExtractPointer** : return the underlying value by the given interface type. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/pointer.md#ExtractPointer)] + [[play](https://go.dev/play/p/D7HFjeWU2ZP)] +- **Of** : return a pointer to the value `v`. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/pointer.md#Of)] + [[play](https://go.dev/play/p/HFd70x4DrMj)] +- **Unwrap** : return the value from the pointer. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/pointer.md#Unwrap)] + [[play](https://go.dev/play/p/cgeu3g7cjWb)] + +### 16. Random package implements some basic functions to generate random int and string. ```go import "github.com/duke-git/lancet/v2/random" @@ -954,8 +968,7 @@ import "github.com/duke-git/lancet/v2/random" [[doc](https://github.com/duke-git/lancet/blob/main/docs/random.md#RandUniqueIntSlice)] [[play](https://go.dev/play/p/uBkRSOz73Ec)] - -### 16. Retry package is for executing a function repeatedly until it was successful or canceled by the context. +### 17. Retry package is for executing a function repeatedly until it was successful or canceled by the context. ```go import "github.com/duke-git/lancet/v2/retry" @@ -979,7 +992,7 @@ import "github.com/duke-git/lancet/v2/retry" [[doc](https://github.com/duke-git/lancet/blob/main/docs/retry.md#RetryTimes)] [[play](https://go.dev/play/p/ssfVeU2SwLO)] -### 17. Slice contains some functions to manipulate slice. +### 18. Slice contains some functions to manipulate slice. ```go import "github.com/duke-git/lancet/v2/slice" @@ -1192,7 +1205,7 @@ import "github.com/duke-git/lancet/v2/slice" [[doc](https://github.com/duke-git/lancet/blob/main/docs/slice.md#KeyBy)] [[play](https://go.dev/play/p/uXod2LWD1Kg)] -### 18. Stream package implements a sequence of elements supporting sequential and operations. this package is an experiment to explore if stream in go can work as the way java does. its function is very limited. +### 19. Stream package implements a sequence of elements supporting sequential and operations. this package is an experiment to explore if stream in go can work as the way java does. its function is very limited. ```go import "github.com/duke-git/lancet/v2/stream" @@ -1279,7 +1292,7 @@ import "github.com/duke-git/lancet/v2/stream" [[doc](https://github.com/duke-git/lancet/blob/main/docs/stream.md#ToSlice)] [[play](https://go.dev/play/p/jI6_iZZuVFE)] -### 19. Structs package provides several high level functions to manipulate struct, tag, and field. +### 20. Structs package provides several high level functions to manipulate struct, tag, and field. ```go import "github.com/duke-git/lancet/v2/structs" @@ -1312,7 +1325,7 @@ import "github.com/duke-git/lancet/v2/structs" - **IsSlice** : check if the field is a slice [[doc](https://github.com/duke-git/lancet/blob/main/docs/structs/field.md#IsSlice)] -### 20. Strutil package contains some functions to manipulate string. +### 21. Strutil package contains some functions to manipulate string. ```go import "github.com/duke-git/lancet/v2/strutil" @@ -1430,7 +1443,7 @@ import "github.com/duke-git/lancet/v2/strutil" - **RemoveWhiteSpace** : remove whitespace characters from a string. [[doc](https://github.com/duke-git/lancet/blob/main/docs/strutil.md#RemoveWhiteSpace)] -### 21. System package contain some functions about os, runtime, shell command. +### 22. System package contain some functions about os, runtime, shell command. ```go import "github.com/duke-git/lancet/v2/system" @@ -1466,7 +1479,88 @@ import "github.com/duke-git/lancet/v2/system" [[doc](https://github.com/duke-git/lancet/blob/main/docs/system.md#GetOsBits)] [[play](https://go.dev/play/p/ml-_XH3gJbW)] -### 22. Validator package contains some functions for data validation. +### 23. Tuple package implements tuple data type and some operations on it. + +```go +import "github.com/duke-git/lancet/v2/tuple" +``` + +#### Function list: + +- **Tuple2** : represents a 2 elemnets tuple. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Tuple2)] +- **Tuple2_Unbox** : returns values in Tuple2. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Tuple2_Unbox)] +- **Zip2** : create a slice of Tuple2, whose elements are correspond to the given slice elements. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Zip2)] +- **Unzip2** : create a group of slice from a slice of Tuple2. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Unzip2)] +- **Tuple3** : represents a 3 elemnets tuple. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Tuple3)] +- **Tuple3_Unbox** : returns values in Tuple3. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Tuple3_Unbox)] +- **Zip3** : create a slice of Tuple3, whose elements are correspond to the given slice elements. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Zip3)] +- **Unzip3** : create a group of slice from a slice of Tuple3. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Unzip3)] +- **Tuple4** : represents a 4 elemnets tuple. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Tuple4)] +- **Tuple4_Unbox** : returns values in Tuple4. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Tuple4_Unbox)] +- **Zip4** : create a slice of Tuple4, whose elements are correspond to the given slice elements. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Zip4)] +- **Unzip4** : create a group of slice from a slice of Tuple4. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Unzip4)] +- **Tuple5** : represents a 5 elemnets tuple. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Tuple5)] +- **Tuple5_Unbox** : returns values in Tuple4. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Tuple5_Unbox)] +- **Zip5** : create a slice of Tuple5, whose elements are correspond to the given slice elements. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Zip5)] +- **Unzip5** : create a group of slice from a slice of Tuple5. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Unzip5)] +- **Tuple6** : represents a 6 elemnets tuple. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Tuple6)] +- **Tuple6_Unbox** : returns values in Tuple6. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Tuple6_Unbox)] +- **Zip6** : create a slice of Tuple6, whose elements are correspond to the given slice elements. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Zip6)] +- **Unzip6** : create a group of slice from a slice of Tuple6. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Unzip6)] +- **Tuple7** : represents a 7 elemnets tuple. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Tuple7)] +- **Tuple7_Unbox** : returns values in Tuple7. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Tuple7_Unbox)] +- **Zip7** : create a slice of Tuple7, whose elements are correspond to the given slice elements. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Zip7)] +- **Unzip7** : create a group of slice from a slice of Tuple7. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Unzip7)] +- **Tuple8** : represents a 8 elemnets tuple. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Tuple8)] +- **Tuple8_Unbox** : returns values in Tuple8. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Tuple8_Unbox)] +- **Zip8** : create a slice of Tuple8, whose elements are correspond to the given slice elements. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Zip8)] +- **Unzip8** : create a group of slice from a slice of Tuple8. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Unzip8)] +- **Tuple9** : represents a 9 elemnets tuple. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Tuple9)] +- **Tuple9_Unbox** : returns values in Tuple9. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Tuple9_Unbox)] +- **Zip9** : create a slice of Tuple9, whose elements are correspond to the given slice elements. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Zip9)] +- **Unzip9** : create a group of slice from a slice of Tuple9. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Unzip9)] +- **Tuple10** : represents a 10 elemnets tuple. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Tuple10)] +- **Tuple10_Unbox** : returns values in Tuple10. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Tuple10_Unbox)] +- **Zip10** : create a slice of Tuple10, whose elements are correspond to the given slice elements. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Zip10)] +- **Unzip10** : create a group of slice from a slice of Tuple10. + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple.md#Unzip10)] + +### 24. Validator package contains some functions for data validation. ```go import "github.com/duke-git/lancet/v2/validator" @@ -1574,7 +1668,7 @@ import "github.com/duke-git/lancet/v2/validator" [[doc](https://github.com/duke-git/lancet/blob/main/docs/validator.md#IsPrintable)] [[play](https://go.dev/play/p/Pe1FE2gdtTP)] -### 23. xerror package implements helpers for errors. +### 25. xerror package implements helpers for errors. ```go import "github.com/duke-git/lancet/v2/xerror" diff --git a/README_zh-CN.md b/README_zh-CN.md index 280ffb9..cfa20a4 100644 --- a/README_zh-CN.md +++ b/README_zh-CN.md @@ -23,7 +23,7 @@ ## 特性 - 👏 全面、高效、可复用。 -- 💪 500+常用 go 工具函数,支持 string、slice、datetime、net、crypt... +- 💪 600+常用 go 工具函数,支持 string、slice、datetime、net、crypt... - 💅 只依赖 go 标准库和 golang.org/x。 - 🌍 所有导出函数单元测试覆盖率 100%。 @@ -288,7 +288,6 @@ import "github.com/duke-git/lancet/v2/convertor" [[doc](https://github.com/duke-git/lancet/blob/main/docs/convertor_zh-CN.md#GbkToUtf8)] [[play](https://go.dev/play/p/OphmHCN_9u8)] - ### 6. cryptor 加密包支持数据加密和解密,获取 md5,hash 值。支持 base64, md5, hmac, aes, des, rsa。 ```go @@ -844,7 +843,6 @@ import "github.com/duke-git/lancet/v2/mathutil" [[doc](https://github.com/duke-git/lancet/blob/main/docs/mathutil_zh-CN.md#Sum)] [[play](https://go.dev/play/p/1To2ImAMJA7)] - ### 14. netutil 网络包支持获取 ip 地址,发送 http 请求。 ```go @@ -918,7 +916,25 @@ import "github.com/duke-git/lancet/v2/netutil" [[doc](https://github.com/duke-git/lancet/blob/main/docs/netutil_zh-CN.md#IsTelnetConnected)] [[play](https://go.dev/play/p/yiLCGtQv_ZG)] -### 15. random 随机数生成器包,可以生成随机[]bytes, int, string。 +### 15. Pointer 包支持一些指针类型的操作。 + +```go +import "github.com/duke-git/lancet/v2/pointer" +``` + +#### 函数列表: + +- **ExtractPointer** : 返回传入 interface 的底层值。 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/pointer_zh-CN.md#ExtractPointer)] + [[play](https://go.dev/play/p/D7HFjeWU2ZP)] +- **Of** : 返回传入参数的指针值。 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/pointer_zh-CN.md#Of)] + [[play](https://go.dev/play/p/HFd70x4DrMj)] +- **Unwrap** : 返回传入指针指向的值。 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/pointer_zh-CN.md#Unwrap)] + [[play](https://go.dev/play/p/cgeu3g7cjWb)] + +### 16. random 随机数生成器包,可以生成随机[]bytes, int, string。 ```go import "github.com/duke-git/lancet/v2/random" @@ -950,12 +966,11 @@ import "github.com/duke-git/lancet/v2/random" - **UUIdV4** : 生成 UUID v4 字符串。 [[doc](https://github.com/duke-git/lancet/blob/main/docs/random_zh-CN.md#UUIdV4)] [[play](https://go.dev/play/p/_Z9SFmr28ft)] -- **RandUniqueIntSlice** : 生成一个不重复的长度为n的随机int切片。 +- **RandUniqueIntSlice** : 生成一个不重复的长度为 n 的随机 int 切片。 [[doc](https://github.com/duke-git/lancet/blob/main/docs/random_zh-CN.md#RandUniqueIntSlice)] [[play](https://go.dev/play/p/uBkRSOz73Ec)] - -### 16. retry 重试执行函数直到函数运行成功或被 context cancel。 +### 17. retry 重试执行函数直到函数运行成功或被 context cancel。 ```go import "github.com/duke-git/lancet/v2/retry" @@ -979,7 +994,7 @@ import "github.com/duke-git/lancet/v2/retry" [[doc](https://github.com/duke-git/lancet/blob/main/docs/retry_zh-CN.md#RetryTimes)] [[play](https://go.dev/play/p/ssfVeU2SwLO)] -### 17. slice 包含操作切片的方法集合。 +### 18. slice 包含操作切片的方法集合。 ```go import "github.com/duke-git/lancet/v2/slice" @@ -1192,7 +1207,7 @@ import "github.com/duke-git/lancet/v2/slice" [[doc](https://github.com/duke-git/lancet/blob/main/docs/slice_zh-CN.md#KeyBy)] [[play](https://go.dev/play/p/uXod2LWD1Kg)] -### 18. Stream 流,该包仅验证简单的 stream 实现,功能有限。 +### 19. Stream 流,该包仅验证简单的 stream 实现,功能有限。 ```go import "github.com/duke-git/lancet/v2/stream" @@ -1279,7 +1294,7 @@ import "github.com/duke-git/lancet/v2/stream" [[doc](https://github.com/duke-git/lancet/blob/main/docs/stream_zh-CN.md#ToSlice)] [[play](https://go.dev/play/p/jI6_iZZuVFE)] -### 19. structs 提供操作 struct, tag, field 的相关函数。 +### 20. structs 提供操作 struct, tag, field 的相关函数。 ```go import "github.com/duke-git/lancet/v2/structs" @@ -1314,7 +1329,7 @@ import "github.com/duke-git/lancet/v2/structs" - **IsSlice** : 判断属性是否是切片。 [[doc](https://github.com/duke-git/lancet/blob/main/docs/structs/field_zh-CN.md#IsSlice)] -### 20. strutil 包含字符串处理的相关函数。 +### 21. strutil 包含字符串处理的相关函数。 ```go import "github.com/duke-git/lancet/v2/strutil" @@ -1433,7 +1448,7 @@ import "github.com/duke-git/lancet/v2/strutil" - **RemoveWhiteSpace** : 删除字符串中的空格。 [[doc](https://github.com/duke-git/lancet/blob/main/docs/strutil_zh-CN.md#RemoveWhiteSpace)] -### 21. system 包含 os, runtime, shell command 的相关函数。 +### 22. system 包含 os, runtime, shell command 的相关函数。 ```go import "github.com/duke-git/lancet/v2/system" @@ -1469,7 +1484,88 @@ import "github.com/duke-git/lancet/v2/system" [[doc](https://github.com/duke-git/lancet/blob/main/docs/system_zh-CN#GetOsBits)] [[play](https://go.dev/play/p/ml-_XH3gJbW)] -### 22. validator 验证器包,包含常用字符串格式验证函数。 +### 23. Tuple 包实现一个元组数据类型。 + +```go +import "github.com/duke-git/lancet/v2/tuple" +``` + +#### 函数列表: + +- **Tuple2** : 2 元元组 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Tuple2)] +- **Tuple2_Unbox** : 返回 2 元元组的字段值。 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Tuple2_Unbox)] +- **Zip2** : 创建一个 Tuple2 元组切片, 其中元组的元素和传入切片元素相对应。 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Zip2)] +- **Unzip2** : 根据传入的Tuple2切片,创建一组和Tuple2元素相对应的切片。 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Unzip2)] +- **Tuple3** : 3 元元组 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Tuple3)] +- **Tuple3_Unbox** : 返回 3 元元组的字段值。 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Tuple3_Unbox)] +- **Zip3** : 创建一个 Tuple3 元组切片, 其中元组的元素和传入切片元素相对应。 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Zip3)] +- **Unzip3** : 根据传入的Tuple3切片,创建一组和Tuple3元素相对应的切片。 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Unzip3)] +- **Tuple4** : 4 元元组 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Tuple4)] +- **Tuple4_Unbox** : 返回 4 元元组的字段值。 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Tuple4_Unbox)] +- **Zip4** : 创建一个 Tuple4 元组切片, 其中元组的元素和传入切片元素相对应。 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Zip4)] +- **Unzip4** : 根据传入的Tuple4切片,创建一组和Tuple4元素相对应的切片。 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Unzip4)] +- **Tuple5** : 5 元元组 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Tuple5)] +- **Tuple5_Unbox** : 返回 5 元元组的字段值。 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Tuple5_Unbox)] +- **Zip5** : 创建一个 Tuple5 元组切片, 其中元组的元素和传入切片元素相对应。 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Zip5)] +- **Unzip5** : 根据传入的Tuple5切片,创建一组和Tuple5元素相对应的切片。 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Unzip5)] +- **Tuple6** : 6 元元组 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Tuple6)] +- **Tuple6_Unbox** : 返回 6 元元组的字段值。 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Tuple6_Unbox)] +- **Zip6** : 创建一个 Tuple6 元组切片, 其中元组的元素和传入切片元素相对应。 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Zip6)] +- **Unzip6** : 根据传入的Tuple6切片,创建一组和Tuple6元素相对应的切片。 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Unzip6)] +- **Tuple7** : 7 元元组 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Tuple7)] +- **Tuple7_Unbox** : 返回 7 元元组的字段值。 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Tuple7_Unbox)] +- **Zip7** : 创建一个 Tuple7 元组切片, 其中元组的元素和传入切片元素相对应。 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Zip7)] +- **Unzip7** : 根据传入的Tuple7切片,创建一组和Tuple7元素相对应的切片。 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Unzip7)] +- **Tuple8** : 8 元元组 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Tuple8)] +- **Tuple8_Unbox** : 返回 8 元元组的字段值。 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Tuple8_Unbox)] +- **Zip8** : 创建一个 Tuple8 元组切片, 其中元组的元素和传入切片元素相对应。 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Zip8)] +- **Unzip8** : 根据传入的Tuple8切片,创建一组和Tuple8元素相对应的切片。 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Unzip8)] +- **Tuple9** : 9 元元组 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Tuple9)] +- **Tuple9_Unbox** : 返回 9 元元组的字段值。 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Tuple9_Unbox)] +- **Zip9** : 创建一个 Tuple9 元组切片, 其中元组的元素和传入切片元素相对应。 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Zip9)] +- **Unzip9** : 根据传入的Tuple9切片,创建一组和Tuple9元素相对应的切片。 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Unzip9)] +- **Tuple10** : 10 元元组 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Tuple10)] +- **Tuple10_Unbox** : 返回 10 元元组的字段值。 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Tuple10_Unbox)] +- **Zip10** : 创建一个 Tuple10 元组切片, 其中元组的元素和传入切片元素相对应。 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Zip10)] +- **Unzip10** : 根据传入的Tuple10切片,创建一组和Tuple10元素相对应的切片。 + [[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Unzip10)] + +### 24. validator 验证器包,包含常用字符串格式验证函数。 ```go import "github.com/duke-git/lancet/v2/validator" @@ -1577,7 +1673,7 @@ import "github.com/duke-git/lancet/v2/validator" [[doc](https://github.com/duke-git/lancet/blob/main/docs/validator_zh-CN.md#IsPrintable)] [[play](https://go.dev/play/p/Pe1FE2gdtTP)] -### 23. xerror 包实现一些错误处理函数 +### 25. xerror 包实现一些错误处理函数 ```go import "github.com/duke-git/lancet/v2/xerror"