1
0
mirror of https://github.com/duke-git/lancet.git synced 2026-02-09 23:22:28 +08:00

doc: update document for version v2.3.8

This commit is contained in:
dudaodong
2025-11-01 21:25:10 +08:00
parent 5d3964d81a
commit 30363242bb
18 changed files with 546 additions and 134 deletions

View File

@@ -229,7 +229,7 @@ func ToPointer[T any](value T) *T {
}
// ToPointers convert a slice of values to a slice of pointers.
// Play: todo
// Play: https://go.dev/play/p/ZUoXd2i5ZkV
func ToPointers[T any](values []T) []*T {
result := make([]*T, len(values))
for i := range values {
@@ -239,7 +239,7 @@ func ToPointers[T any](values []T) []*T {
}
// FromPointer returns the value pointed to by the pointer.
// Play: todo
// Play: https://go.dev/play/p/wAp90V7Zu6g
func FromPointer[T any](ptr *T) T {
if ptr == nil {
var zeroValue T
@@ -250,7 +250,7 @@ func FromPointer[T any](ptr *T) T {
}
// FromPointers convert a slice of pointers to a slice of values.
// Play: todo
// Play: https://go.dev/play/p/qIPsyYtNy3Q
func FromPointers[T any](pointers []*T) []T {
result := make([]T, len(pointers))
for i, ptr := range pointers {

View File

@@ -169,6 +169,45 @@ func ExampleToPointer() {
// 123
}
func ExampleToPointers() {
strs := []string{"a", "b", "c"}
pointerStrs := ToPointers(strs)
fmt.Println(*pointerStrs[0])
fmt.Println(*pointerStrs[1])
fmt.Println(*pointerStrs[2])
// Output:
// a
// b
// c
}
func ExampleFromPointer() {
str := "abc"
strPtr := &str
result := FromPointer(strPtr)
fmt.Println(result)
// Output:
// abc
}
func ExampleFromPointers() {
strs := []string{"a", "b", "c"}
strPtr := []*string{&strs[0], &strs[1], &strs[2]}
result := FromPointers(strPtr)
fmt.Println(result[0])
fmt.Println(result[1])
fmt.Println(result[2])
// Output:
// a
// b
// c
}
func ExampleToMap() {
type Message struct {
name string