code-ruby 0.8.1 → 0.8.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 53530542bdf5a824a43456c8a1d16ef187c0e040f614d797caf0316d821611fc
4
- data.tar.gz: 7c21efbe6de1846a76ee403a59c9c1e90f0259af2523d4bbbee21759a6bf99c6
3
+ metadata.gz: f85a852d230055ba09e08dc5691e178c3ca77de8fa9eb98fd34bc4bd0af483fb
4
+ data.tar.gz: b10269160b66c41ae45c60100ac8a992783c4ea7b7a5d17f162cc986a842aa80
5
5
  SHA512:
6
- metadata.gz: 85ea6c55e13230861d8d6c3aa8a80dca114c382edcf9a2c2781e7fbb74d924027756e47b418a4ce69e05d63f93ca1957fe086aa62d831ec8226f52fba4b805fd
7
- data.tar.gz: afa54fcd58082f980d7dc72d4cfd06c61a73f26aeb88700e8d87928ebaeb02c3c4b42d08c9bcb0284807e2f795f4d30ebe20d5a7e3b892b3bdf5235cfb418747
6
+ metadata.gz: 3bf9ee8ec6e9227127f9f32ad80e6ab70831b61fa51e3007eedf1abe263b36a68ef5c11b50b60c28c449e46f33a2de00dfaa1897af610a82ebee77904e3618f8
7
+ data.tar.gz: 9cb74bab622fa84ebe83786d9f576a777b248a4f4ad372872b1b3ee9865a46a94174a12e4c1b093e0c54a53612b36fb6c26e877d9884968646fd226104cd207c
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- code-ruby (0.7.8)
4
+ code-ruby (0.8.2)
5
5
  activesupport (~> 7)
6
6
  bigdecimal (~> 3)
7
7
  language-ruby (~> 0)
@@ -10,7 +10,7 @@ PATH
10
10
  GEM
11
11
  remote: https://rubygems.org/
12
12
  specs:
13
- activesupport (7.1.3)
13
+ activesupport (7.1.3.2)
14
14
  base64
15
15
  bigdecimal
16
16
  concurrent-ruby (~> 1.0, >= 1.0.2)
@@ -17,6 +17,9 @@ class Code
17
17
  operator = args.fetch(:operator, nil)
18
18
 
19
19
  case operator.to_s
20
+ when "ago"
21
+ sig(args)
22
+ code_ago
20
23
  when "from_now"
21
24
  sig(args)
22
25
  code_from_now
@@ -25,6 +28,10 @@ class Code
25
28
  end
26
29
  end
27
30
 
31
+ def code_ago
32
+ Time.new(raw.ago)
33
+ end
34
+
28
35
  def code_from_now
29
36
  Time.new(raw.from_now)
30
37
  end
@@ -82,6 +82,9 @@ class Code
82
82
  when "clone"
83
83
  sig(args)
84
84
  code_clone
85
+ when "day", "days"
86
+ sig(args)
87
+ code_days
85
88
  when "decrement!"
86
89
  sig(args) { Integer.maybe }
87
90
  code_decrement!(value)
@@ -389,6 +392,10 @@ class Code
389
392
  Duration.new(raw.hours)
390
393
  end
391
394
 
395
+ def code_days
396
+ Duration.new(raw.days)
397
+ end
398
+
392
399
  def inspect
393
400
  to_s
394
401
  end
data/lib/code/object.rb CHANGED
@@ -20,6 +20,7 @@ class Code
20
20
 
21
21
  def self.sig(args, &block)
22
22
  Type::Sig.sig(args, object: self, &block)
23
+ nil
23
24
  end
24
25
 
25
26
  def self.call(**args)
@@ -141,10 +142,11 @@ class Code
141
142
 
142
143
  def self.sig(args, &block)
143
144
  Type::Sig.sig(args, object: self, &block)
145
+ nil
144
146
  end
145
147
 
146
148
  def self.name
147
- raise NotImplementedError, "name"
149
+ "Object"
148
150
  end
149
151
 
150
152
  def self.to_s
@@ -303,6 +305,7 @@ class Code
303
305
 
304
306
  def sig(args, &block)
305
307
  Type::Sig.sig(args, object: self, &block)
308
+ nil
306
309
  end
307
310
 
308
311
  def to_s
data/lib/code/type/sig.rb CHANGED
@@ -11,11 +11,13 @@ class Code
11
11
 
12
12
  def self.sig(...)
13
13
  new(...).sig
14
+ nil
14
15
  end
15
16
 
16
17
  def sig
17
18
  check_number_of_arguments!
18
19
  check_types_of_arguments!
20
+ nil
19
21
  end
20
22
 
21
23
  private
@@ -92,6 +94,8 @@ class Code
92
94
  Error::ArityError,
93
95
  "#{function}: Expected #{expected_count} but got #{actual_count}"
94
96
  )
97
+
98
+ nil
95
99
  end
96
100
 
97
101
  def valid_for?(expected:, actual:)
@@ -130,6 +134,8 @@ class Code
130
134
  )
131
135
  end
132
136
  end
137
+
138
+ nil
133
139
  end
134
140
  end
135
141
  end
data/lib/code/version.rb CHANGED
@@ -2,4 +2,4 @@
2
2
 
3
3
  require_relative "../code"
4
4
 
5
- Code::Version = Gem::Version.new("0.8.1")
5
+ Code::Version = Gem::Version.new("0.8.3")
data/spec/code_spec.rb CHANGED
@@ -191,9 +191,16 @@ RSpec.describe Code do
191
191
  end
192
192
 
193
193
  [
194
+ "1.day.ago",
195
+ "1.day.from_now",
196
+ "1.hour.ago",
194
197
  "1.hour.from_now",
198
+ "2.days.ago",
199
+ "2.days.from_now",
200
+ "2.hours.ago",
201
+ "2.hours.from_now",
202
+ "Date.tomorrow",
195
203
  "Time.tomorrow",
196
- "Date.tomorrow"
197
204
  ].each do |input|
198
205
  it(input) { Code.evaluate(input) }
199
206
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: code-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.1
4
+ version: 0.8.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dorian Marié
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-02-15 00:00:00.000000000 Z
11
+ date: 2024-02-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bigdecimal