yake 0.5.6 → 0.6.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.
- checksums.yaml +4 -4
- data/README.md +16 -0
- data/lib/yake/support.rb +7 -2
- data/lib/yake/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 608f4f31563bbda1db8213273eada195baa5ce02add9853a13f07904ace788f5
|
4
|
+
data.tar.gz: a91dc710313eefb17c11f6fd3e4887324260f715e059148cb9063565487e8222
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 385cba84bca2c7992ec6072857a344f3a02ad191f0f3004cce9364e5738875a027fc7a264aba371e285d3a1ddd7a868de99b1058b38277d9205500c4c96fd1c7
|
7
|
+
data.tar.gz: 4b658f2d67d823cd59d02775e06de9de8f6f0593ecdb7eabc7d97bdfe966924b89c46598cd230f7656c01e42056c2f57370f17b8d6ec83293ef99fa57a936cd3
|
data/README.md
CHANGED
@@ -197,11 +197,17 @@ MyObject.new.some_method
|
|
197
197
|
|
198
198
|
MyObject.new.try(:some_method)
|
199
199
|
# => nil
|
200
|
+
|
201
|
+
10.try(:some_method) { |x| x ** 2 }
|
202
|
+
# => 100
|
200
203
|
```
|
201
204
|
|
202
205
|
`Hash` helpers:
|
203
206
|
|
204
207
|
```ruby
|
208
|
+
{ f: 'g', a: { d: 'e', b: 'c' } }.deep_sort
|
209
|
+
# => { a: { b: 'c', d: 'e' }, f: 'g' }
|
210
|
+
|
205
211
|
{ fizz: 'buzz' }.encode64
|
206
212
|
# => "eyJmaXp6IjoiYnV6eiJ9\n"
|
207
213
|
|
@@ -219,6 +225,10 @@ MyObject.new.try(:some_method)
|
|
219
225
|
|
220
226
|
{ fizz: 'buzz' }.to_form
|
221
227
|
# => "fizz=buzz"
|
228
|
+
|
229
|
+
{ f: 'g', a: { d: 'e', b: 'c' } }.to_json_sorted
|
230
|
+
# => '{"a":{"b":"c","d":"e"},"f":"g"}'
|
231
|
+
|
222
232
|
```
|
223
233
|
|
224
234
|
`Integer` helpers:
|
@@ -257,6 +267,12 @@ host / path
|
|
257
267
|
'fizz'.encode64
|
258
268
|
# => "Zml6eg==\n"
|
259
269
|
|
270
|
+
'fizz'.md5sum
|
271
|
+
# => "b6bfa6c318811be022d4f73070597660"
|
272
|
+
|
273
|
+
'fizz'.sha1sum
|
274
|
+
# => "c25f5985f2ab63baeb2408a2d7dbc79d8f29d02f"
|
275
|
+
|
260
276
|
'CamelCaseString'.snake_case
|
261
277
|
# => "camel_case_string"
|
262
278
|
|
data/lib/yake/support.rb
CHANGED
@@ -1,14 +1,17 @@
|
|
1
1
|
require 'base64'
|
2
|
+
require 'digest'
|
2
3
|
require 'json'
|
3
4
|
require 'time'
|
4
5
|
|
5
6
|
class Hash
|
7
|
+
def deep_sort() self.sort.map { |k,v| [ k, v.try(:deep_sort) { |x| x } ] }.to_h end
|
6
8
|
def encode64() to_json.encode64 end
|
7
9
|
def except(*keys) self.reject { |key,_| keys.include? key } end
|
8
10
|
def strict_encode64() to_json.strict_encode64 end
|
9
11
|
def stringify_names() JSON.parse(to_json) end
|
10
12
|
def symbolize_names() JSON.parse(to_json, symbolize_names: true) end
|
11
13
|
def to_form() URI.encode_www_form(self) end
|
14
|
+
def to_json_sorted() deep_sort.to_json end
|
12
15
|
end
|
13
16
|
|
14
17
|
class Integer
|
@@ -27,10 +30,10 @@ class Integer
|
|
27
30
|
end
|
28
31
|
|
29
32
|
class Object
|
30
|
-
def try(method, *args, **kwargs)
|
33
|
+
def try(method, *args, **kwargs, &block)
|
31
34
|
send(method, *args, **kwargs)
|
32
35
|
rescue
|
33
|
-
nil
|
36
|
+
block_given? ? yield(self) : nil
|
34
37
|
end
|
35
38
|
end
|
36
39
|
|
@@ -39,6 +42,8 @@ class String
|
|
39
42
|
def camel_case() split(/_/).map(&:capitalize).join end
|
40
43
|
def decode64() Base64.decode64(self) end
|
41
44
|
def encode64() Base64.encode64(self) end
|
45
|
+
def md5sum() Digest::MD5.hexdigest(self) end
|
46
|
+
def sha1sum() Digest::SHA1.hexdigest(self) end
|
42
47
|
def snake_case() gsub(/([a-z])([A-Z])/, '\1_\2').downcase end
|
43
48
|
def strict_decode64() Base64.strict_decode64(self) end
|
44
49
|
def strict_encode64() Base64.strict_encode64(self) end
|
data/lib/yake/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: yake
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alexander Mancevice
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-05-
|
11
|
+
date: 2022-05-29 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description:
|
14
14
|
email:
|