code-ruby 1.8.1 → 1.8.3

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d066f06aab2a2ae00bcbcbeedea154305c0fbc19f920ca13cb4cef1d787a1884
4
- data.tar.gz: eca3f011e3bd8811743a3412947fff667c8c1e0f5838ccc8c4e7d3e2360ab6e8
3
+ metadata.gz: 90ea1b00e6d1977fe3d8dfa40d26a7354556380bcd64c0c6cbe448a4ff3b28cd
4
+ data.tar.gz: df66b284a124cf8ec9eedb572567920093c36227d5d0c9cc7c5b95ea59e487ea
5
5
  SHA512:
6
- metadata.gz: bdc06dddc2a05ce5c88f8dabfa25eb8b3a44811f94d99dcb65011dc8ed05daeabcbc68a2431d3705ec90435838f13fe88663a6cd4299f1dbb1da454972694c57
7
- data.tar.gz: 0cc4c89d00285ff43b96916c05855dbd74671c001b115dcf4a303323af6f563b2b813e872080cc115f4a26f3b5cc30f812011e191044ae70d94125b7ae6cd5b6
6
+ metadata.gz: d1649988e887c986755e1ec2e9dbda9a5d410b290b0c29f3e025c33e6d229b79eb5905b390790a0fc287bb528a0a3a22c67e1650ad0982605594e10441404c7e
7
+ data.tar.gz: d29cfd0814037087f57aaeb4bd1ef56e8f2755cf4f6eba38a6ab0f65c66ff8d780d87315490171fabb01354029acd5d0b962b546f2c66d7bdd30914b03f2ea2b
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- code-ruby (1.8.1)
4
+ code-ruby (1.8.3)
5
5
  activesupport
6
6
  base64
7
7
  bigdecimal
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.8.1
1
+ 1.8.3
@@ -11,6 +11,18 @@ class Code
11
11
  code_value = code_arguments.code_first
12
12
 
13
13
  case code_operator.to_s
14
+ when "present?"
15
+ sig(args)
16
+ code_present?
17
+ when "blank?"
18
+ sig(args)
19
+ code_blank?
20
+ when "presence"
21
+ sig(args)
22
+ code_presence
23
+ when "presence_in"
24
+ sig(args) { Object::List }
25
+ code_presence_in(code_value)
14
26
  when "new"
15
27
  sig(args) { Object.repeat }
16
28
  code_new(*code_arguments.raw)
@@ -98,6 +110,9 @@ class Code
98
110
  when "to_string"
99
111
  sig(args)
100
112
  code_to_string
113
+ when "inspect"
114
+ sig(args)
115
+ code_inspect
101
116
  when "to_time"
102
117
  sig(args)
103
118
  code_to_time
@@ -448,6 +463,32 @@ class Code
448
463
  def code_methods
449
464
  Object::List.new(methods)
450
465
  end
466
+
467
+ def present?
468
+ true
469
+ end
470
+
471
+ def blank?
472
+ !present?
473
+ end
474
+
475
+ def code_present?
476
+ Object::Boolean.new(present?)
477
+ end
478
+
479
+ def code_blank?
480
+ Object::Boolean.new(blank?)
481
+ end
482
+
483
+ def code_presence
484
+ present? ? self : Object::Nothing.new
485
+ end
486
+
487
+ def code_presence_in(list = [])
488
+ code_list = list.to_code
489
+
490
+ code_list.code_include?(self).truthy? ? self : Object::Nothing.new
491
+ end
451
492
  end
452
493
  end
453
494
  end
@@ -49,6 +49,10 @@ class Code
49
49
  def truthy?
50
50
  raw
51
51
  end
52
+
53
+ def present?
54
+ raw.present?
55
+ end
52
56
  end
53
57
  end
54
58
  end
@@ -1028,6 +1028,10 @@ class Code
1028
1028
 
1029
1029
  -1
1030
1030
  end
1031
+
1032
+ def present?
1033
+ raw.present?
1034
+ end
1031
1035
  end
1032
1036
  end
1033
1037
  end
@@ -189,6 +189,9 @@ class Code
189
189
  when "to_html"
190
190
  sig(args)
191
191
  code_to_html
192
+ when "attribute"
193
+ sig(args) { String }
194
+ code_attribute(code_value)
192
195
  else
193
196
  super
194
197
  end
@@ -236,6 +239,11 @@ class Code
236
239
  def code_to_string
237
240
  String.new(raw.text)
238
241
  end
242
+
243
+ def code_attribute(value = nil)
244
+ code_value = value.to_code
245
+ String.new(raw.attr(code_value.to_s))
246
+ end
239
247
  end
240
248
  end
241
249
  end
@@ -1035,6 +1035,10 @@ class Code
1035
1035
  def any?
1036
1036
  code_any?.truthy?
1037
1037
  end
1038
+
1039
+ def present?
1040
+ raw.present?
1041
+ end
1038
1042
  end
1039
1043
  end
1040
1044
  end
@@ -11,6 +11,10 @@ class Code
11
11
  false
12
12
  end
13
13
 
14
+ def present?
15
+ false
16
+ end
17
+
14
18
  def nothing?
15
19
  true
16
20
  end
@@ -58,6 +58,12 @@ class Code
58
58
  when "size"
59
59
  sig(args)
60
60
  code_size
61
+ when "strip"
62
+ sig(args)
63
+ code_strip
64
+ when "split"
65
+ sig(args) { String }
66
+ code_split(code_value)
61
67
  else
62
68
  super
63
69
  end
@@ -118,6 +124,20 @@ class Code
118
124
  def code_size
119
125
  Integer.new(raw.size)
120
126
  end
127
+
128
+ def code_strip
129
+ String.new(raw.strip)
130
+ end
131
+
132
+ def code_split(value)
133
+ code_value = value.to_code
134
+
135
+ List.new(raw.split(code_value.to_s))
136
+ end
137
+
138
+ def present?
139
+ raw.present?
140
+ end
121
141
  end
122
142
  end
123
143
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: code-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.8.1
4
+ version: 1.8.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dorian Marié