code-ruby 0.8.0 → 0.8.2
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/Gemfile.lock +2 -2
- data/lib/code/object.rb +12 -9
- data/lib/code/type/sig.rb +6 -0
- data/lib/code/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: 70c443c88335cbe52c883ee9443aa32649b0fc3d294864fc69118bc2aa56688a
|
|
4
|
+
data.tar.gz: 25fcebbe1193d7f75c820f550400187f6082ac0e58346291d0fc53114a497a09
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 0f558cf8b686f6457a83fcd383243810e6a2d611d7e1dd039991fce5947c740df19d445d3ae0dcefc4973c7282e1e201cd380b3ee5f5ec67588d257ac4b61db7
|
|
7
|
+
data.tar.gz: acea5e97f3b15e08392331ef776827fe3a115a42603bdc958c0dd348835fb5330ac333626ca0337f22d5b5d45d50f615ef71d66132b9876b04efa9a2abda607c
|
data/Gemfile.lock
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
code-ruby (0.
|
|
4
|
+
code-ruby (0.8.1)
|
|
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)
|
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)
|
|
@@ -86,7 +87,7 @@ class Code
|
|
|
86
87
|
else
|
|
87
88
|
raise(
|
|
88
89
|
Code::Error::Undefined,
|
|
89
|
-
"#{operator} not defined on #{inspect}
|
|
90
|
+
"#{operator} not defined on #{inspect}:Class"
|
|
90
91
|
)
|
|
91
92
|
end
|
|
92
93
|
end
|
|
@@ -135,20 +136,13 @@ class Code
|
|
|
135
136
|
!truthy?
|
|
136
137
|
end
|
|
137
138
|
|
|
138
|
-
def self.hash
|
|
139
|
-
unless respond_to?(:raw)
|
|
140
|
-
raise NotImplementedError, "#{self.class.name}#hash"
|
|
141
|
-
end
|
|
142
|
-
|
|
143
|
-
[self.class, raw].hash
|
|
144
|
-
end
|
|
145
|
-
|
|
146
139
|
def self.multi_fetch(hash, *keys)
|
|
147
140
|
keys.map { |key| [key, hash.fetch(key)] }.to_h
|
|
148
141
|
end
|
|
149
142
|
|
|
150
143
|
def self.sig(args, &block)
|
|
151
144
|
Type::Sig.sig(args, object: self, &block)
|
|
145
|
+
nil
|
|
152
146
|
end
|
|
153
147
|
|
|
154
148
|
def self.name
|
|
@@ -159,6 +153,10 @@ class Code
|
|
|
159
153
|
name
|
|
160
154
|
end
|
|
161
155
|
|
|
156
|
+
def self.inspect
|
|
157
|
+
to_s
|
|
158
|
+
end
|
|
159
|
+
|
|
162
160
|
def self.truthy?
|
|
163
161
|
true
|
|
164
162
|
end
|
|
@@ -307,12 +305,17 @@ class Code
|
|
|
307
305
|
|
|
308
306
|
def sig(args, &block)
|
|
309
307
|
Type::Sig.sig(args, object: self, &block)
|
|
308
|
+
nil
|
|
310
309
|
end
|
|
311
310
|
|
|
312
311
|
def to_s
|
|
313
312
|
raise NotImplementedError, "#{self.class.name}#to_s"
|
|
314
313
|
end
|
|
315
314
|
|
|
315
|
+
def inspect
|
|
316
|
+
to_s
|
|
317
|
+
end
|
|
318
|
+
|
|
316
319
|
def truthy?
|
|
317
320
|
true
|
|
318
321
|
end
|
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
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.
|
|
4
|
+
version: 0.8.2
|
|
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-
|
|
11
|
+
date: 2024-02-26 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bigdecimal
|