Skip to content

Commit db85f99

Browse files
Sah, NandeshwarSah, Nandeshwar
authored andcommitted
updated readme file for release v.5.0
1 parent 8130ca0 commit db85f99

File tree

1 file changed

+95
-1
lines changed

1 file changed

+95
-1
lines changed

README.md

Lines changed: 95 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ go get -u github.com/logic-building/functional-go/set/
1919
```
2020
[[constraint]]
2121
name = "github.com/logic-building/functional-go"
22-
version = "8.4.0"
22+
version = "8.5.0"
2323
```
2424

2525
### Quick Start
@@ -33,6 +33,100 @@ func square(num int) int {
3333
return num * num
3434
}
3535
36+
```
37+
#### Four variants of function 1 is given above and 3 are given below
38+
##### MapInt, MapIntPtr, MapIntErr, MapIntPtrErr
39+
###MapIntPtr
40+
```
41+
package main
42+
43+
import (
44+
"fmt"
45+
"github.com/logic-building/functional-go/fp"
46+
)
47+
48+
var v1 int = 1
49+
var v2 int = 2
50+
var v3 int = 3
51+
var v4 int = 4
52+
53+
func main() {
54+
result := fp.MapIntPtr(square, []*int{&v1, &v2, &v3, &v4})
55+
fmt.Println(*result[0], *result[1], *result[2], *result[3])
56+
}
57+
58+
func square(num *int) *int {
59+
r := *num * *num
60+
return &r
61+
}
62+
63+
/*
64+
output:
65+
1 4 9 16
66+
*/
67+
```
68+
69+
###MapIntErr
70+
```
71+
package main
72+
73+
import (
74+
"errors"
75+
"fmt"
76+
"github.com/logic-building/functional-go/fp"
77+
)
78+
79+
func main() {
80+
result, _ := fp.MapIntErr(square, []int{1, 2, 3, 4})
81+
fmt.Println(result[0], result[1], result[2], result[3])
82+
}
83+
84+
func square(num int) (int, error) {
85+
if num == -1 {
86+
return 0, errors.New("-1 is not valid")
87+
}
88+
r := num * num
89+
return r, nil
90+
}
91+
92+
/*
93+
output:
94+
1 4 9 16
95+
*/
96+
```
97+
98+
###MapIntPtrErr
99+
```
100+
package main
101+
102+
import (
103+
"errors"
104+
"fmt"
105+
106+
"github.com/logic-building/functional-go/fp"
107+
)
108+
109+
func main() {
110+
var v1 int = 1
111+
var v2 int = 2
112+
var v3 int = 3
113+
var v4 int = 4
114+
115+
result, _ := fp.MapIntPtrErr(square, []*int{&v1, &v2, &v3, &v4})
116+
fmt.Println(*result[0], *result[1], *result[2], *result[3])
117+
}
118+
119+
func square(num *int) (*int, error) {
120+
if *num == -1 {
121+
return nil, errors.New("-1 is not valid")
122+
}
123+
r := *num * *num
124+
return &r, nil
125+
}
126+
/*
127+
output:
128+
1 4 9 16
129+
*/
36130
```
37131

38132
#### Generate functional code locally in project for user defined data type

0 commit comments

Comments
 (0)