Skip to content

Commit d7714f1

Browse files
author
Sah, Nandeshwar
committed
Added function Reverse in method chain functionality
1 parent fe1e2bd commit d7714f1

File tree

10 files changed

+684
-0
lines changed

10 files changed

+684
-0
lines changed

fp/methodchain.go

Lines changed: 140 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -140,6 +140,16 @@ func (slice intSlicePtr) DropWhilePtr(functors ...intFunctorForFilterPtr) intSli
140140
return tmpSlice
141141
}
142142

143+
// Reverse - reverse the list
144+
func (slice intSlice) Reverse() intSlice {
145+
return ReverseInts(slice)
146+
}
147+
148+
// ReversePtr - reverse the list
149+
func (slice intSlicePtr) ReversePtr() intSlicePtr {
150+
return ReverseIntsPtr(slice)
151+
}
152+
143153
type int64Slice []int64
144154
type int64FunctorForMap func(int64) int64
145155
type int64FunctorForFilter func(int64) bool
@@ -280,6 +290,16 @@ func (slice int64SlicePtr) DropWhilePtr(functors ...int64FunctorForFilterPtr) in
280290
return tmpSlice
281291
}
282292

293+
// Reverse - reverse the list
294+
func (slice int64Slice) Reverse() int64Slice {
295+
return ReverseInts64(slice)
296+
}
297+
298+
// ReversePtr - reverse the list
299+
func (slice int64SlicePtr) ReversePtr() int64SlicePtr {
300+
return ReverseInts64Ptr(slice)
301+
}
302+
283303
type int32Slice []int32
284304
type int32FunctorForMap func(int32) int32
285305
type int32FunctorForFilter func(int32) bool
@@ -420,6 +440,16 @@ func (slice int32SlicePtr) DropWhilePtr(functors ...int32FunctorForFilterPtr) in
420440
return tmpSlice
421441
}
422442

443+
// Reverse - reverse the list
444+
func (slice int32Slice) Reverse() int32Slice {
445+
return ReverseInts32(slice)
446+
}
447+
448+
// ReversePtr - reverse the list
449+
func (slice int32SlicePtr) ReversePtr() int32SlicePtr {
450+
return ReverseInts32Ptr(slice)
451+
}
452+
423453
type int16Slice []int16
424454
type int16FunctorForMap func(int16) int16
425455
type int16FunctorForFilter func(int16) bool
@@ -560,6 +590,16 @@ func (slice int16SlicePtr) DropWhilePtr(functors ...int16FunctorForFilterPtr) in
560590
return tmpSlice
561591
}
562592

593+
// Reverse - reverse the list
594+
func (slice int16Slice) Reverse() int16Slice {
595+
return ReverseInts16(slice)
596+
}
597+
598+
// ReversePtr - reverse the list
599+
func (slice int16SlicePtr) ReversePtr() int16SlicePtr {
600+
return ReverseInts16Ptr(slice)
601+
}
602+
563603
type int8Slice []int8
564604
type int8FunctorForMap func(int8) int8
565605
type int8FunctorForFilter func(int8) bool
@@ -700,6 +740,16 @@ func (slice int8SlicePtr) DropWhilePtr(functors ...int8FunctorForFilterPtr) int8
700740
return tmpSlice
701741
}
702742

743+
// Reverse - reverse the list
744+
func (slice int8Slice) Reverse() int8Slice {
745+
return ReverseInts8(slice)
746+
}
747+
748+
// ReversePtr - reverse the list
749+
func (slice int8SlicePtr) ReversePtr() int8SlicePtr {
750+
return ReverseInts8Ptr(slice)
751+
}
752+
703753
type uintSlice []uint
704754
type uintFunctorForMap func(uint) uint
705755
type uintFunctorForFilter func(uint) bool
@@ -840,6 +890,16 @@ func (slice uintSlicePtr) DropWhilePtr(functors ...uintFunctorForFilterPtr) uint
840890
return tmpSlice
841891
}
842892

893+
// Reverse - reverse the list
894+
func (slice uintSlice) Reverse() uintSlice {
895+
return ReverseUints(slice)
896+
}
897+
898+
// ReversePtr - reverse the list
899+
func (slice uintSlicePtr) ReversePtr() uintSlicePtr {
900+
return ReverseUintsPtr(slice)
901+
}
902+
843903
type uint64Slice []uint64
844904
type uint64FunctorForMap func(uint64) uint64
845905
type uint64FunctorForFilter func(uint64) bool
@@ -980,6 +1040,16 @@ func (slice uint64SlicePtr) DropWhilePtr(functors ...uint64FunctorForFilterPtr)
9801040
return tmpSlice
9811041
}
9821042

1043+
// Reverse - reverse the list
1044+
func (slice uint64Slice) Reverse() uint64Slice {
1045+
return ReverseUint64s(slice)
1046+
}
1047+
1048+
// ReversePtr - reverse the list
1049+
func (slice uint64SlicePtr) ReversePtr() uint64SlicePtr {
1050+
return ReverseUint64sPtr(slice)
1051+
}
1052+
9831053
type uint32Slice []uint32
9841054
type uint32FunctorForMap func(uint32) uint32
9851055
type uint32FunctorForFilter func(uint32) bool
@@ -1120,6 +1190,16 @@ func (slice uint32SlicePtr) DropWhilePtr(functors ...uint32FunctorForFilterPtr)
11201190
return tmpSlice
11211191
}
11221192

1193+
// Reverse - reverse the list
1194+
func (slice uint32Slice) Reverse() uint32Slice {
1195+
return ReverseUints32(slice)
1196+
}
1197+
1198+
// ReversePtr - reverse the list
1199+
func (slice uint32SlicePtr) ReversePtr() uint32SlicePtr {
1200+
return ReverseUints32Ptr(slice)
1201+
}
1202+
11231203
type uint16Slice []uint16
11241204
type uint16FunctorForMap func(uint16) uint16
11251205
type uint16FunctorForFilter func(uint16) bool
@@ -1260,6 +1340,16 @@ func (slice uint16SlicePtr) DropWhilePtr(functors ...uint16FunctorForFilterPtr)
12601340
return tmpSlice
12611341
}
12621342

1343+
// Reverse - reverse the list
1344+
func (slice uint16Slice) Reverse() uint16Slice {
1345+
return ReverseUints16(slice)
1346+
}
1347+
1348+
// ReversePtr - reverse the list
1349+
func (slice uint16SlicePtr) ReversePtr() uint16SlicePtr {
1350+
return ReverseUints16Ptr(slice)
1351+
}
1352+
12631353
type uint8Slice []uint8
12641354
type uint8FunctorForMap func(uint8) uint8
12651355
type uint8FunctorForFilter func(uint8) bool
@@ -1400,6 +1490,16 @@ func (slice uint8SlicePtr) DropWhilePtr(functors ...uint8FunctorForFilterPtr) ui
14001490
return tmpSlice
14011491
}
14021492

1493+
// Reverse - reverse the list
1494+
func (slice uint8Slice) Reverse() uint8Slice {
1495+
return ReverseUints8(slice)
1496+
}
1497+
1498+
// ReversePtr - reverse the list
1499+
func (slice uint8SlicePtr) ReversePtr() uint8SlicePtr {
1500+
return ReverseUints8Ptr(slice)
1501+
}
1502+
14031503
type stringSlice []string
14041504
type stringFunctorForMap func(string) string
14051505
type stringFunctorForFilter func(string) bool
@@ -1540,6 +1640,16 @@ func (slice stringSlicePtr) DropWhilePtr(functors ...stringFunctorForFilterPtr)
15401640
return tmpSlice
15411641
}
15421642

1643+
// Reverse - reverse the list
1644+
func (slice stringSlice) Reverse() stringSlice {
1645+
return ReverseStrs(slice)
1646+
}
1647+
1648+
// ReversePtr - reverse the list
1649+
func (slice stringSlicePtr) ReversePtr() stringSlicePtr {
1650+
return ReverseStrsPtr(slice)
1651+
}
1652+
15431653
type boolSlice []bool
15441654
type boolFunctorForMap func(bool) bool
15451655
type boolFunctorForFilter func(bool) bool
@@ -1680,6 +1790,16 @@ func (slice boolSlicePtr) DropWhilePtr(functors ...boolFunctorForFilterPtr) bool
16801790
return tmpSlice
16811791
}
16821792

1793+
// Reverse - reverse the list
1794+
func (slice boolSlice) Reverse() boolSlice {
1795+
return ReverseBools(slice)
1796+
}
1797+
1798+
// ReversePtr - reverse the list
1799+
func (slice boolSlicePtr) ReversePtr() boolSlicePtr {
1800+
return ReverseBoolsPtr(slice)
1801+
}
1802+
16831803
type float32Slice []float32
16841804
type float32FunctorForMap func(float32) float32
16851805
type float32FunctorForFilter func(float32) bool
@@ -1820,6 +1940,16 @@ func (slice float32SlicePtr) DropWhilePtr(functors ...float32FunctorForFilterPtr
18201940
return tmpSlice
18211941
}
18221942

1943+
// Reverse - reverse the list
1944+
func (slice float32Slice) Reverse() float32Slice {
1945+
return ReverseFloat32s(slice)
1946+
}
1947+
1948+
// ReversePtr - reverse the list
1949+
func (slice float32SlicePtr) ReversePtr() float32SlicePtr {
1950+
return ReverseFloat32sPtr(slice)
1951+
}
1952+
18231953
type float64Slice []float64
18241954
type float64FunctorForMap func(float64) float64
18251955
type float64FunctorForFilter func(float64) bool
@@ -1959,3 +2089,13 @@ func (slice float64SlicePtr) DropWhilePtr(functors ...float64FunctorForFilterPtr
19592089

19602090
return tmpSlice
19612091
}
2092+
2093+
// Reverse - reverse the list
2094+
func (slice float64Slice) Reverse() float64Slice {
2095+
return ReverseFloat64s(slice)
2096+
}
2097+
2098+
// ReversePtr - reverse the list
2099+
func (slice float64SlicePtr) ReversePtr() float64SlicePtr {
2100+
return ReverseFloat64sPtr(slice)
2101+
}

0 commit comments

Comments
 (0)