From fa298b740d9be2f6b061ed34a7cb1894929ea0d6 Mon Sep 17 00:00:00 2001 From: dudaodong Date: Thu, 1 Feb 2024 10:41:09 +0800 Subject: [PATCH] add playground demo --- README.md | 4 +++- README_zh-CN.md | 4 +++- docs/api/packages/fileutil.md | 4 ++-- docs/api/packages/slice.md | 4 ++-- docs/en/api/packages/fileutil.md | 3 +-- docs/en/api/packages/slice.md | 14 +++++++------- fileutil/file.go | 2 +- slice/slice.go | 4 ++-- 8 files changed, 21 insertions(+), 18 deletions(-) diff --git a/README.md b/README.md index 6d82147..c8d72ae 100644 --- a/README.md +++ b/README.md @@ -708,7 +708,7 @@ import "github.com/duke-git/lancet/v2/fileutil" [[doc](https://github.com/duke-git/lancet/blob/main/docs/en/api/packages/fileutil.md#WriteCsvFile)] - **WriteMapsToCsv** : write slice of map to csv file. [[doc](https://github.com/duke-git/lancet/blob/main/docs/en/api/packages/fileutil.md#WriteMapsToCsv)] - [[play](https://go.dev/play/p/dAXm58Q5U1o)] + [[play](https://go.dev/play/p/umAIomZFV1c)] - **WriteBytesToFile** : write bytes to target file. [[doc](https://github.com/duke-git/lancet/blob/main/docs/en/api/packages/fileutil.md#WriteBytesToFile)] [[play](https://go.dev/play/p/s7QlDxMj3P8)] @@ -1182,8 +1182,10 @@ import "github.com/duke-git/lancet/v2/slice" [[play](https://go.dev/play/p/v2U2deugKuV)] - **DeleteAt** : delete the element of slice at index. [[doc](https://github.com/duke-git/lancet/blob/main/docs/en/api/packages/slice.md#DeleteAt)] + [[play](https://go.dev/play/p/800B1dPBYyd)] - **DeleteRange** : delete the element of slice from start index to end index(exclude). [[doc](https://github.com/duke-git/lancet/blob/main/docs/en/api/packages/slice.md#DeleteRange)] + [[play](https://go.dev/play/p/945HwiNrnle)] - **Drop** : drop n elements from the start of a slice. [[doc](https://github.com/duke-git/lancet/blob/main/docs/en/api/packages/slice.md#Drop)] [[play](https://go.dev/play/p/jnPO2yQsT8H)] diff --git a/README_zh-CN.md b/README_zh-CN.md index 5b704c1..8c17213 100644 --- a/README_zh-CN.md +++ b/README_zh-CN.md @@ -709,7 +709,7 @@ import "github.com/duke-git/lancet/v2/fileutil" [[doc](https://github.com/duke-git/lancet/blob/main/docs/api/packages/fileutil.md#WriteCsvFile)] - **WriteMapsToCsv** : 将map切片写入csv文件中。 [[doc](https://github.com/duke-git/lancet/blob/main/docs/api/packages/fileutil.md#WriteMapsToCsv)] - [[play](https://go.dev/play/p/dAXm58Q5U1o)] + [[play](https://go.dev/play/p/umAIomZFV1c)] - **WriteBytesToFile** : 将 bytes 写入文件。 [[doc](https://github.com/duke-git/lancet/blob/main/docs/api/packages/fileutil.md#WriteBytesToFile)] [[play](https://go.dev/play/p/s7QlDxMj3P8)] @@ -1181,8 +1181,10 @@ import "github.com/duke-git/lancet/v2/slice" [[play](https://go.dev/play/p/v2U2deugKuV)] - **DeleteAt** : 删除切片中指定索引到的元素。 [[doc](https://github.com/duke-git/lancet/blob/main/docs/api/packages/slice.md#DeleteAt)] + [[play](https://go.dev/play/p/800B1dPBYyd)] - **DeleteRange** : 删除切片中指定开始索引到结束索引的元素。 [[doc](https://github.com/duke-git/lancet/blob/main/docs/api/packages/slice.md#DeleteRange)] + [[play](https://go.dev/play/p/945HwiNrnle)] - **Drop** : 从切片头部删除 n 个元素。 [[doc](https://github.com/duke-git/lancet/blob/main/docs/api/packages/slice.md#Drop)] [[play](https://go.dev/play/p/jnPO2yQsT8H)] diff --git a/docs/api/packages/fileutil.md b/docs/api/packages/fileutil.md index 70e2499..c61f2c7 100644 --- a/docs/api/packages/fileutil.md +++ b/docs/api/packages/fileutil.md @@ -759,7 +759,7 @@ func main() { func WriteMapsToCsv(filepath string, records []map[string]any, appendToExistingFile bool, delimiter rune, headers ...[]string) error ``` -示例: +示例:[运行](https://go.dev/play/p/umAIomZFV1c) ```go package main @@ -782,7 +782,7 @@ func main() { } headers := []string{"Name", "Age", "Gender"} - err := WriteMapsToCsv(csvFilePath, records, false, ';', headers) + err := fileutil.WriteMapsToCsv(csvFilePath, records, false, ';', headers) if err != nil { log.Fatal(err) diff --git a/docs/api/packages/slice.md b/docs/api/packages/slice.md index bef9a8c..dab680f 100644 --- a/docs/api/packages/slice.md +++ b/docs/api/packages/slice.md @@ -525,7 +525,7 @@ func main() { func DeleteAt[T any](slice []T, index int) []T ``` -示例:[运行](https://go.dev/play/p/pJ-d6MUWcvK) +示例:[运行](https://go.dev/play/p/800B1dPBYyd) ```go import ( @@ -565,7 +565,7 @@ func main() { func DeleteRange[T any](slice []T, start, end int) []T ``` -示例: +示例:[运行](https://go.dev/play/p/945HwiNrnle) ```go import ( diff --git a/docs/en/api/packages/fileutil.md b/docs/en/api/packages/fileutil.md index 593062e..5507dc1 100644 --- a/docs/en/api/packages/fileutil.md +++ b/docs/en/api/packages/fileutil.md @@ -45,7 +45,6 @@ import ( - [Sha](#Sha) - [ReadCsvFile](#ReadCsvFile) - [WriteCsvFile](#WriteCsvFile) -- [WriteCsvFile](#WriteCsvFile) - [WriteMapsToCsv](#WriteMapsToCsv) - [WriteStringToFile](#WriteStringToFile) - [WriteBytesToFile](#WriteBytesToFile) @@ -760,7 +759,7 @@ func main() { func WriteMapsToCsv(filepath string, records []map[string]any, appendToExistingFile bool, delimiter rune, headers ...[]string) error ``` -Example: +Example:[运行](https://go.dev/play/p/umAIomZFV1c) ```go package main diff --git a/docs/en/api/packages/slice.md b/docs/en/api/packages/slice.md index b580ca9..e113471 100644 --- a/docs/en/api/packages/slice.md +++ b/docs/en/api/packages/slice.md @@ -524,7 +524,7 @@ func main() { func DeleteAt[T any](slice []T, index int) ``` -Example:[Run](https://go.dev/play/p/pJ-d6MUWcvK) +Example:[Run](https://go.dev/play/p/800B1dPBYyd) ```go import ( @@ -563,7 +563,7 @@ func main() { func DeleteRange[T any](slice []T, start, end int) []T ``` -Example: +Example:[Run](https://go.dev/play/p/945HwiNrnle) ```go import ( @@ -574,11 +574,11 @@ import ( func main() { chars := []string{"a", "b", "c", "d", "e"} - result1 := DeleteRange(chars, 0, 0) - result2 := DeleteRange(chars, 0, 1) - result3 := DeleteRange(chars, 0, 3) - result4 := DeleteRange(chars, 0, 4) - result5 := DeleteRange(chars, 0, 5) + result1 := slice.DeleteRange(chars, 0, 0) + result2 := slice.DeleteRange(chars, 0, 1) + result3 := slice.DeleteRange(chars, 0, 3) + result4 := slice.DeleteRange(chars, 0, 4) + result5 := slice.DeleteRange(chars, 0, 5) fmt.Println(result1) fmt.Println(result2) diff --git a/fileutil/file.go b/fileutil/file.go index e8405ec..32dbb54 100644 --- a/fileutil/file.go +++ b/fileutil/file.go @@ -754,7 +754,7 @@ func escapeCSVField(field string, delimiter rune) string { } // WriteMapsToCsv write slice of map to csv file. -// Play: todo +// Play: https://go.dev/play/p/umAIomZFV1c // filepath: Path to the CSV file. // records: Slice of maps to be written. the value of map should be basic type. // the maps will be sorted by key in alphabeta order, then be written into csv file. diff --git a/slice/slice.go b/slice/slice.go index 23bb2f7..0ac436c 100644 --- a/slice/slice.go +++ b/slice/slice.go @@ -619,7 +619,7 @@ func IntSlice(slice any) []int { } // DeleteAt delete the element of slice at index. -// Play: https://go.dev/play/p/pJ-d6MUWcvK +// Play: https://go.dev/play/p/800B1dPBYyd func DeleteAt[T any](slice []T, index int) []T { if index >= len(slice) { index = len(slice) - 1 @@ -633,7 +633,7 @@ func DeleteAt[T any](slice []T, index int) []T { } // DeleteRange delete the element of slice from start index to end index(exclude). -// Play: todo +// Play: https://go.dev/play/p/945HwiNrnle func DeleteRange[T any](slice []T, start, end int) []T { result := make([]T, 0, len(slice)-(end-start))