1
0
mirror of https://github.com/duke-git/lancet.git synced 2026-02-04 12:52:28 +08:00

48 Commits

Author SHA1 Message Date
dudaodong
993b0e6023 feat: add Join 2023-07-27 20:14:57 +08:00
dudaodong
3a944ab12f test: update slice unit test 2022-07-27 15:31:12 +08:00
dudaodong
0cb251f7b8 feat: add ToSlice and ToSlicePointer and AppendIfAbsent 2022-07-27 15:12:14 +08:00
dudaodong
ae0facd32d refactor: clean code for slice/slice.go 2022-06-22 14:21:45 +08:00
dudaodong
2d7e19fb87 feat: add UniqueBy function in slice.go 2022-06-22 12:00:01 +08:00
dudaodong
cc4a20751f test: add unit test for funcation IndexOf and LastIndexOf 2022-06-17 17:02:44 +08:00
dudaodong
b0d1d39452 feat: add IndexOf and LastIndexOf function in slice.go 2022-06-17 17:01:37 +08:00
dudaodong
433eb63b86 feat: add EqualWith function for slice 2022-06-17 15:47:36 +08:00
dudaodong
a2541dac03 feat: add Equal function for slice 2022-06-17 15:37:36 +08:00
dudaodong
b48155c249 refactor: rename files *_util.go to *_internal.go 2022-02-19 21:52:10 +08:00
dudaodong
41685022c0 refactor: rename files *_util.go to *_internal.go 2022-02-19 21:51:58 +08:00
dudaodong
5899921054 fix: fix some text 2022-01-24 15:30:22 +08:00
dudaodong
ec19014578 feat: add FindLast func 2022-01-24 15:29:14 +08:00
dudaodong
1ad990ce9d feat: add FindLast func 2022-01-24 15:28:47 +08:00
dudaodong
6f035f710e feat: add DifferenceBy func 2022-01-23 14:27:37 +08:00
dudaodong
92967e0add fix: TestCompact for blank string case 2022-01-22 21:21:12 +08:00
dudaodong
6a1a0b8677 feat: add Concat func 2022-01-22 21:16:34 +08:00
dudaodong
28317a1683 feat: remove ConvertSlice func 2022-01-19 20:41:46 +08:00
dudaodong
e31fb28003 feat: add func ContainSubSlice 2022-01-13 11:00:27 +08:00
donutloop
f147f78a41 Slice: sort from v2 branch (#22)
ref: f1d7154179
2022-01-11 20:13:25 +08:00
dudaodong
3438f3b18a refactor: rewrite all unit test functions with assert 2022-01-09 13:07:49 +08:00
donutloop
3905c0bde1 Slice: Add count func (#15)
Returns the count of matched elements
2022-01-06 20:32:14 +08:00
dudaodong
df9de3065b feat: add ForEach func 2022-01-05 20:17:16 +08:00
dudaodong
71a2ea3f20 update: change case name for TestNone func 2022-01-05 19:46:51 +08:00
donutloop
4aef9d6d22 Slice: Add none func (#13)
Returns true whether no elements of this slice match the provided predicate
func. Negated form of Every func
2022-01-05 19:38:14 +08:00
donutloop
bc39b0887b Filter: remove second loop and indexes slice (#12)
Use less memory and cpu resources to filter out elements from the slice.
2022-01-03 20:10:15 +08:00
dudaodong
7a9b0847f9 fix: fix some go line issue in go report card 2022-01-03 14:57:14 +08:00
donutloop
f15131f032 Slice: find nothing case (#11)
The current behavior can result into wired edge cases.

**Current behavior**

if find was unsuccessfully then it will return the first element of the
slice

**Desired behavior**

if find was unsuccessfully then it should return negative ok and a none
value
2022-01-02 22:05:27 +08:00
donutloop
b4a49fccfd Slice: Add GroupBy func (#10)
Group by: split slice into two groups, applies on each slice element a
predicate func to categorize this element.

Changes

* Add groub by func
* Add test case for this func
2022-01-02 21:24:56 +08:00
dudaodong
d4f49af2ad feat: add watcher for record code excution time 2022-01-01 19:56:15 +08:00
dudaodong
ed4acc1c67 feat: add Shuffle func 2022-01-01 19:18:33 +08:00
dudaodong
042a00296f feat: add FlattenDeep func 2022-01-01 18:14:35 +08:00
dudaodong
b42aac53b3 feat: add Drop func 2022-01-01 17:20:41 +08:00
dudaodong
c625a88067 refactor: rename package 'utils' to 'internal' 2021-12-31 11:36:11 +08:00
dudaodong
bb4ac01209 Merge branch 'main' of github.com:duke-git/lancet into main 2021-12-31 10:18:11 +08:00
donutloop
147c1625b5 Slice: Optimize slice func tools (#9)
IntSlice and StringSlice: preallocate memory up front for output slice.
Instead returning a error throw a panic because most likely it's a
programming error.
Contain: rename slice to iterableType and add default case for type
mismatches
2021-12-31 10:15:38 +08:00
dudaodong
2aed55f704 refactor: function in slice.go 2021-12-31 10:12:14 +08:00
donutloop
b106c428ae Every: use int counter (#6)
Use counter to verify all elements passed the perdicate func.
Replace slice of indexes with int counter.
2021-12-29 09:51:50 +08:00
dudaodong
ec983b7aa6 fix: fix
Intersection slice issue
2021-12-28 10:16:53 +08:00
dudaodong
99faeccb05 feat: add Intersection, Union, Without func for slice/slice.go 2021-12-27 19:54:04 +08:00
dudaodong
ad777bc877 feat: add Intersection, Union, Without func for slice/slice.go 2021-12-27 19:47:45 +08:00
dudaodong
589ce7404f refactor: update painc message 2021-12-27 15:12:18 +08:00
Marcel Edmund Franke
578b1bba65 Some: allocate slice to keep track unused indexes is not necessary
Waste of memory for those unused indexes. It got replaced by a simple
boolean to keep track of it.
2021-12-25 13:04:03 +01:00
dudaodong
3021985df9 feat: add ClearFile, ReadFileToString, ReadFileByLine into file.go 2021-12-09 20:19:13 +08:00
dudaodong
188d52cd9d feat: add Some and Every function in slice.go 2021-12-09 19:27:20 +08:00
dudaodong
8c8f991390 feat: add Find function in slice.go 2021-12-09 17:54:16 +08:00
dudaodong
f2ed3c6270 test: add some unit test function for convertor, random, slice, and formatter 2021-11-29 17:27:02 +08:00
dudaodong
3254591ab9 publish lancet 2021-11-28 21:28:23 +08:00