File tree 3 files changed +56
-6
lines changed
3 files changed +56
-6
lines changed Original file line number Diff line number Diff line change @@ -34,7 +34,56 @@ type Config struct {
34
34
35
35
```
36
36
37
- 但是有时候这个值就是一个字面值常量传进去的,比如查询数据库时的分页大小等,这个时候如果要获取指针类型的话就有点麻烦,上面这个场景只是举了一个例子,这个模块就是用来解决类似的问题的。
37
+ 但是有时候这个值就是一个字面值常量传进去的,比如查询数据库时的分页大小等,这个时候如果要获取指针类型的话就有点麻烦,比如:
38
+
39
+ ``` go
40
+ package main
41
+
42
+ func main () {
43
+
44
+ foo := 10
45
+ config := &Config{
46
+ Foo: &foo,
47
+ }
48
+ callSomeFunction (config)
49
+
50
+ }
51
+ ```
52
+
53
+ 如果使用这个库的话:
54
+
55
+ ``` go
56
+ package main
57
+
58
+ func main () {
59
+
60
+ config := &Config{
61
+ Foo: pointer.ToPointer (10 )
62
+ }
63
+ callSomeFunction (config)
64
+
65
+ }
66
+ ```
67
+
68
+ Diff:
69
+
70
+ ``` diff
71
+ package main
72
+
73
+ func main() {
74
+
75
+ - foo := 10
76
+
77
+ config := &Config{
78
+ - Foo: &foo,
79
+ + Foo: pointer.ToPointer(10)
80
+ }
81
+ callSomeFunction(config)
82
+
83
+ }
84
+ ```
85
+
86
+ 上面这个场景只是举了一个例子,这个模块就是用来解决类似的问题的。
38
87
39
88
# 三、Example Code
40
89
@@ -81,4 +130,3 @@ func main() {
81
130
82
131
83
132
84
-
Original file line number Diff line number Diff line change @@ -2,11 +2,13 @@ module github.com/golang-infrastructure/go-pointer
2
2
3
3
go 1.18
4
4
5
+ require (
6
+ github.com/golang-infrastructure/go-reflect-utils v0.0.0-20221118150121-07bd8584ebab
7
+ github.com/stretchr/testify v1.8.1
8
+ )
9
+
5
10
require (
6
11
github.com/davecgh/go-spew v1.1.1 // indirect
7
- github.com/golang-infrastructure/go-reflect-utils v0.0.0-20221118150121-07bd8584ebab // indirect
8
12
github.com/pmezard/go-difflib v1.0.0 // indirect
9
- github.com/stretchr/objx v0.5.0 // indirect
10
- github.com/stretchr/testify v1.8.1 // indirect
11
13
gopkg.in/yaml.v3 v3.0.1 // indirect
12
14
)
Original file line number Diff line number Diff line change @@ -7,12 +7,12 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb
7
7
github.com/pmezard/go-difflib v1.0.0 /go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4 =
8
8
github.com/stretchr/objx v0.1.0 /go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME =
9
9
github.com/stretchr/objx v0.4.0 /go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw =
10
- github.com/stretchr/objx v0.5.0 h1:1zr/of2m5FGMsad5YfcqgdqdWrIhu+EBEJRhR1U7z/c =
11
10
github.com/stretchr/objx v0.5.0 /go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo =
12
11
github.com/stretchr/testify v1.7.1 /go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg =
13
12
github.com/stretchr/testify v1.8.0 /go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU =
14
13
github.com/stretchr/testify v1.8.1 h1:w7B6lhMri9wdJUVmEZPGGhZzrYTPvgJArz7wNPgYKsk =
15
14
github.com/stretchr/testify v1.8.1 /go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4 =
15
+ gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM =
16
16
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 /go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0 =
17
17
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c /go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM =
18
18
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA =
You can’t perform that action at this time.
0 commit comments