ragabash 0.3.0 → 0.3.1
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/lib/ragabash/refinements.rb +110 -70
- data/lib/ragabash/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5fee44b32704e05de0a1e2ad0dd1235ebda07641
|
4
|
+
data.tar.gz: ab6a8fefe71d5021a16e271954d074cd0cc86a1a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c03a93e7fa71411b30bc75d0ec3a69be3211e2b5fcdf32c39c206fc0c4415303fbb7dea8d5953bb3690e7d35d9774e201b8a130ea98e3a9ced64a1b14fb5ba0a
|
7
|
+
data.tar.gz: fe8f83aa134d4221dc1c1c78771cc7f30961e9c1bf2eace5a9beb4fda6a3fb15e2d9b3692b29ef71ec123092807da37576df54d364bbfb80e70a1fe18be53257
|
data/lib/ragabash/refinements.rb
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
require "ice_nine"
|
3
|
+
require "fast_blank" unless defined?(JRUBY_VERSION)
|
3
4
|
|
4
5
|
module Ragabash
|
5
6
|
# A set of useful refinements for base classes.
|
@@ -15,7 +16,7 @@ module Ragabash
|
|
15
16
|
# Ragabash::Refinements.activate!
|
16
17
|
#
|
17
18
|
|
18
|
-
module Refinements
|
19
|
+
module Refinements # rubocop:disable Metrics/ModuleLength
|
19
20
|
# rubocop:disable Style/Alias
|
20
21
|
|
21
22
|
# @!method deep_freeze
|
@@ -144,19 +145,23 @@ module Ragabash
|
|
144
145
|
def try_dup
|
145
146
|
respond_to?(:dup) ? dup : self
|
146
147
|
end
|
147
|
-
alias deep_dup try_dup
|
148
|
+
alias deep_dup try_dup unless respond_to?(:deep_dup)
|
148
149
|
|
149
150
|
def safe_copy
|
150
151
|
IceNine.deep_freeze(try_dup)
|
151
152
|
end
|
152
153
|
alias frozen_copy safe_copy
|
153
154
|
|
154
|
-
|
155
|
-
|
155
|
+
unless respond_to?(:blank?)
|
156
|
+
def blank?
|
157
|
+
respond_to?(:empty?) ? !!empty? : !self # rubocop:disable DoubleNegation
|
158
|
+
end
|
156
159
|
end
|
157
160
|
|
158
|
-
|
159
|
-
|
161
|
+
unless respond_to?(:present?)
|
162
|
+
def present?
|
163
|
+
!blank?
|
164
|
+
end
|
160
165
|
end
|
161
166
|
end
|
162
167
|
|
@@ -164,16 +169,20 @@ module Ragabash
|
|
164
169
|
def try_dup
|
165
170
|
self
|
166
171
|
end
|
167
|
-
alias deep_dup try_dup
|
172
|
+
alias deep_dup try_dup unless respond_to?(:deep_dup)
|
168
173
|
alias safe_copy try_dup
|
169
174
|
alias frozen_copy try_dup
|
170
175
|
|
171
|
-
|
172
|
-
|
176
|
+
unless respond_to?(:blank?)
|
177
|
+
def blank?
|
178
|
+
true
|
179
|
+
end
|
173
180
|
end
|
174
181
|
|
175
|
-
|
176
|
-
|
182
|
+
unless respond_to?(:present?)
|
183
|
+
def present?
|
184
|
+
false
|
185
|
+
end
|
177
186
|
end
|
178
187
|
end
|
179
188
|
|
@@ -181,16 +190,20 @@ module Ragabash
|
|
181
190
|
def try_dup
|
182
191
|
self
|
183
192
|
end
|
184
|
-
alias deep_dup try_dup
|
193
|
+
alias deep_dup try_dup unless respond_to?(:deep_dup)
|
185
194
|
alias safe_copy try_dup
|
186
195
|
alias frozen_copy try_dup
|
187
196
|
|
188
|
-
|
189
|
-
|
197
|
+
unless respond_to?(:blank?)
|
198
|
+
def blank?
|
199
|
+
true
|
200
|
+
end
|
190
201
|
end
|
191
202
|
|
192
|
-
|
193
|
-
|
203
|
+
unless respond_to?(:present?)
|
204
|
+
def present?
|
205
|
+
false
|
206
|
+
end
|
194
207
|
end
|
195
208
|
end
|
196
209
|
|
@@ -198,16 +211,20 @@ module Ragabash
|
|
198
211
|
def try_dup
|
199
212
|
self
|
200
213
|
end
|
201
|
-
alias deep_dup try_dup
|
214
|
+
alias deep_dup try_dup unless respond_to?(:deep_dup)
|
202
215
|
alias safe_copy try_dup
|
203
216
|
alias frozen_copy try_dup
|
204
217
|
|
205
|
-
|
206
|
-
|
218
|
+
unless respond_to?(:blank?)
|
219
|
+
def blank?
|
220
|
+
false
|
221
|
+
end
|
207
222
|
end
|
208
223
|
|
209
|
-
|
210
|
-
|
224
|
+
unless respond_to?(:present?)
|
225
|
+
def present?
|
226
|
+
true
|
227
|
+
end
|
211
228
|
end
|
212
229
|
end
|
213
230
|
|
@@ -215,16 +232,20 @@ module Ragabash
|
|
215
232
|
def try_dup
|
216
233
|
self
|
217
234
|
end
|
218
|
-
alias deep_dup try_dup
|
235
|
+
alias deep_dup try_dup unless respond_to?(:deep_dup)
|
219
236
|
alias safe_copy try_dup
|
220
237
|
alias frozen_copy try_dup
|
221
238
|
|
222
|
-
|
223
|
-
|
239
|
+
unless respond_to?(:blank?)
|
240
|
+
def blank?
|
241
|
+
false
|
242
|
+
end
|
224
243
|
end
|
225
244
|
|
226
|
-
|
227
|
-
|
245
|
+
unless respond_to?(:present?)
|
246
|
+
def present?
|
247
|
+
true
|
248
|
+
end
|
228
249
|
end
|
229
250
|
end
|
230
251
|
|
@@ -232,40 +253,43 @@ module Ragabash
|
|
232
253
|
def try_dup
|
233
254
|
self
|
234
255
|
end
|
235
|
-
alias deep_dup try_dup
|
256
|
+
alias deep_dup try_dup unless respond_to?(:deep_dup)
|
236
257
|
alias safe_copy try_dup
|
237
258
|
alias frozen_copy try_dup
|
238
259
|
|
239
|
-
|
240
|
-
|
260
|
+
unless respond_to?(:blank?)
|
261
|
+
def blank?
|
262
|
+
false
|
263
|
+
end
|
241
264
|
end
|
242
265
|
|
243
|
-
|
244
|
-
|
266
|
+
unless respond_to?(:present?)
|
267
|
+
def present?
|
268
|
+
true
|
269
|
+
end
|
245
270
|
end
|
246
271
|
end
|
247
272
|
|
248
273
|
require "bigdecimal"
|
249
274
|
@rmods << refine(::BigDecimal) do
|
250
|
-
def dup
|
251
|
-
dup = self.class.allocate
|
252
|
-
initialize_copy(dup)
|
253
|
-
dup
|
254
|
-
end
|
255
275
|
alias try_dup dup
|
256
|
-
alias deep_dup dup
|
276
|
+
alias deep_dup dup unless respond_to?(:deep_dup)
|
257
277
|
|
258
278
|
def safe_copy
|
259
279
|
frozen? ? self : dup.freeze
|
260
280
|
end
|
261
281
|
alias frozen_copy safe_copy
|
262
282
|
|
263
|
-
|
264
|
-
|
283
|
+
unless respond_to?(:blank?)
|
284
|
+
def blank?
|
285
|
+
false
|
286
|
+
end
|
265
287
|
end
|
266
288
|
|
267
|
-
|
268
|
-
|
289
|
+
unless respond_to?(:present?)
|
290
|
+
def present?
|
291
|
+
true
|
292
|
+
end
|
269
293
|
end
|
270
294
|
end
|
271
295
|
|
@@ -275,24 +299,29 @@ module Ragabash
|
|
275
299
|
end
|
276
300
|
alias frozen_copy safe_copy
|
277
301
|
|
278
|
-
|
279
|
-
|
280
|
-
|
281
|
-
|
302
|
+
unless respond_to?(:blank?)
|
303
|
+
if defined?(JRUBY_VERSION)
|
304
|
+
BLANK_RE = /\A[[:space:]]*\z/
|
305
|
+
def blank?
|
306
|
+
empty? || BLANK_RE === self # rubocop:disable Style/CaseEquality
|
307
|
+
end
|
308
|
+
else
|
309
|
+
alias blank? blank_as?
|
282
310
|
end
|
283
|
-
else
|
284
|
-
require "fast_blank"
|
285
|
-
alias blank? blank_as?
|
286
311
|
end
|
287
312
|
|
288
|
-
|
289
|
-
|
313
|
+
unless respond_to?(:present?)
|
314
|
+
def present?
|
315
|
+
!blank?
|
316
|
+
end
|
290
317
|
end
|
291
318
|
end
|
292
319
|
|
293
320
|
@rmods << refine(::Array) do
|
294
|
-
|
295
|
-
|
321
|
+
unless respond_to?(:deep_dup)
|
322
|
+
def deep_dup
|
323
|
+
map { |value| value.deep_dup } # rubocop:disable Style/SymbolProc
|
324
|
+
end
|
296
325
|
end
|
297
326
|
|
298
327
|
def safe_copy
|
@@ -300,24 +329,29 @@ module Ragabash
|
|
300
329
|
end
|
301
330
|
alias frozen_copy safe_copy
|
302
331
|
|
303
|
-
alias blank? empty?
|
304
|
-
|
305
|
-
|
332
|
+
alias blank? empty? unless respond_to?(:blank?)
|
333
|
+
|
334
|
+
unless respond_to?(:present?)
|
335
|
+
def present?
|
336
|
+
!empty?
|
337
|
+
end
|
306
338
|
end
|
307
339
|
end
|
308
340
|
|
309
341
|
@rmods << refine(::Hash) do
|
310
|
-
|
311
|
-
|
312
|
-
|
313
|
-
|
314
|
-
|
315
|
-
|
316
|
-
|
317
|
-
|
342
|
+
unless respond_to?(:deep_dup)
|
343
|
+
def deep_dup
|
344
|
+
hash = dup
|
345
|
+
each_pair do |key, value|
|
346
|
+
if key.frozen? && ::String === key # rubocop:disable CaseEquality
|
347
|
+
hash[key] = value.deep_dup
|
348
|
+
else
|
349
|
+
hash.delete(key)
|
350
|
+
hash[key.deep_dup] = value.deep_dup
|
351
|
+
end
|
318
352
|
end
|
353
|
+
hash
|
319
354
|
end
|
320
|
-
hash
|
321
355
|
end
|
322
356
|
|
323
357
|
def safe_copy
|
@@ -325,9 +359,12 @@ module Ragabash
|
|
325
359
|
end
|
326
360
|
alias frozen_copy safe_copy
|
327
361
|
|
328
|
-
alias blank? empty?
|
329
|
-
|
330
|
-
|
362
|
+
alias blank? empty? unless respond_to?(:blank?)
|
363
|
+
|
364
|
+
unless respond_to?(:present?)
|
365
|
+
def present?
|
366
|
+
!empty?
|
367
|
+
end
|
331
368
|
end
|
332
369
|
end
|
333
370
|
|
@@ -347,9 +384,12 @@ module Ragabash
|
|
347
384
|
end
|
348
385
|
alias frozen_copy safe_copy
|
349
386
|
|
350
|
-
alias blank? empty?
|
351
|
-
|
352
|
-
|
387
|
+
alias blank? empty? unless respond_to?(:blank?)
|
388
|
+
|
389
|
+
unless respond_to?(:present?)
|
390
|
+
def present?
|
391
|
+
!empty?
|
392
|
+
end
|
353
393
|
end
|
354
394
|
end
|
355
395
|
end
|
data/lib/ragabash/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ragabash
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tim Bellefleur
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-03-
|
11
|
+
date: 2017-03-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|