tooly 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/tooly.rb +96 -2
  3. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5044ca16bbc0206d863bbdbaea359e17774f5a53337b9789b8c9969433f3f4cf
4
- data.tar.gz: 70ff35bbd17ea0c6024a9509e7a85323a57bacde8347f82b3e94ca5d20033a73
3
+ metadata.gz: 1e34c3a3a439710f402eeaa32e06fb25df2dd9aecca9976fc3a27225cb3a4f0d
4
+ data.tar.gz: a78eab7bcd9156ed9225cabda127dc48f63819f69081146f7434ed338e248513
5
5
  SHA512:
6
- metadata.gz: 4e56aeee183cdddc476fb4232021080601a38e0332b74e80b02fd3b721c7abfb9f59059aae39d684d695e89e7be3589dd7c88cc16bbb11ee954778cb866f2e0b
7
- data.tar.gz: 1023fa9f9c6f66c3baf3cf714fd864c56571ee478e5ac0f02f5acaccd13647104adf634c3fc2dda04be77d772f05f6d9e0fe3c019380bb40df5b946a7b509561
6
+ metadata.gz: a23f86804d2a25ce4d1ef2a603fe61810a1c2efc2193b1a1e294fb71882c15af567e55ef029f5f841223423b2b3b2144f0f54fd5c675c4678af532eb6b46f15c
7
+ data.tar.gz: 34daf8d5a9a316d19746aab89dc279aa1c012c2807ae5d4bdf1dcb2a4684bda42b9436a1a70addd3615759700c446c58619e2cac4e6e5d5ee6c66ba5d1fb7488
data/lib/tooly.rb CHANGED
@@ -1,6 +1,100 @@
1
+ require './lib/utils'
2
+
1
3
  class Tooly
2
- def self.concat(initList, arg)
3
- n = [initList, arg]
4
+ # Create a list without `null`, `false`, `0` and `''` from another list.
5
+ def self.compact(list)
6
+ listResult = []
7
+ if list.empty?
8
+ return listResult
9
+ end
10
+ for data in list do
11
+ unless data == nil || data == false || data == '' || data == 0
12
+ listResult << data
13
+ end
14
+ end
15
+ return listResult
16
+ end
17
+
18
+ # Create a list that contain the initial list and additional list
19
+ def self.concat(list, arg)
20
+ n = [list, arg]
4
21
  return n.flatten!
5
22
  end
23
+
24
+ # Create a list no duplicate elements from another list
25
+ def self.uniq(list)
26
+ list |= []
27
+ end
28
+
29
+ # Create a string from a list
30
+ def self.listToString(list)
31
+ strFinal = ''
32
+ for e in list do
33
+ i = list.index(e)
34
+ if i < list.length() - 1
35
+ strFinal = "#{strFinal}#{list[i].to_s}, "
36
+ else
37
+ strFinal = strFinal + list[i].to_s
38
+ end
39
+ end
40
+ return strFinal
41
+ end
42
+
43
+ # Flattens list a single level deep
44
+ def self.flatten(list)
45
+ return list.flatten(1)
46
+ end
47
+
48
+ # Create an list of elements split into groups the length of initial list size.
49
+ def self.chunk(list, size)
50
+ result = []
51
+ aux = []
52
+ list.each_with_index do |item, i|
53
+ if (i + 1) % size == 0
54
+ aux << item
55
+ result << aux
56
+ aux = []
57
+ else
58
+ aux << item
59
+ end
60
+ end
61
+
62
+ unless aux.empty?
63
+ result.concat(aux)
64
+ end
65
+ return result
66
+ end
67
+
68
+ # Create a list of values that not include in the second list.
69
+ def self.difference(fisrList, secondList)
70
+ result = []
71
+ for element in fisrList do
72
+ searchElement = secondList.find {|e| element == e }
73
+
74
+ if searchElement == nil
75
+ result << element
76
+ end
77
+ end
78
+ return result
79
+ end
80
+
81
+ # Create a list with `n` elements dropped from the beginning.
82
+ def self.drop(list, n)
83
+ length = list.length
84
+ if length == 0 || n > length
85
+ return []
86
+ else
87
+ return list.slice(n < 0 ? 0 : n, length)
88
+ end
89
+ end
90
+
91
+ # Fills elements of `list` with `value` from `start` up to, but not including `end`.
92
+ def self.fill(list, value, st, en = nil)
93
+ length = list.length
94
+ if length == 0
95
+ return []
96
+ else
97
+ return Utils.baseFill(list, value, st, en)
98
+ end
99
+ end
6
100
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tooly
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - AndyGeek
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-10-22 00:00:00.000000000 Z
11
+ date: 2022-11-05 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Tooly is a package based in Lodash for Ruby
14
14
  email: