finitio 0.11.4 → 0.12.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 +5 -5
- data/CHANGELOG.md +28 -20
- data/Gemfile.lock +18 -18
- data/finitio.gemspec +3 -3
- data/lib/finitio/json_schema/builtin_type.rb +0 -2
- data/lib/finitio/stdlib/finitio/data.fio +2 -2
- data/lib/finitio/type/ad_type.rb +1 -1
- data/lib/finitio/type/builtin_type.rb +4 -4
- data/lib/finitio/type/struct_type.rb +2 -2
- data/lib/finitio/type/sub_type.rb +2 -2
- data/lib/finitio/type/tuple_type.rb +3 -3
- data/lib/finitio/type/union_type.rb +2 -2
- data/lib/finitio/version.rb +2 -2
- data/spec/finitio/test_ast.rb +2 -2
- data/spec/finitio/test_parse.rb +1 -1
- data/spec/finitio/test_system.rb +1 -1
- data/spec/json_schema/test_builtin_type.rb +4 -6
- data/spec/type_factory/factory/test_sub_type.rb +3 -3
- metadata +171 -172
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 92c67dd32e89dd6c4597b4a8456572bb1a5b3de07bdf58e88bcb9dc3f0874462
|
4
|
+
data.tar.gz: 4ecd7898e477113040613415f9bc2cc8f23bc3605d0f71a3ccaefbbe1eaf31ff
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: eb3042b639a82d469bb760807e6c94e1f70c39a3249420d30e339d5f004048e8abe6026de3b3b834e3703f88b3dd10a6d2937abdba5a183444af13609cc150b5
|
7
|
+
data.tar.gz: f44c30f37848ad1e0b8344487cc0f0353ad694ce31c535ff6dd4ae02e903bebc92d11b29ac78ae0aa7d21f7bce6ba3fbd7ecdceb2cb6d14aa4bd3f9d6fb5164a
|
data/CHANGELOG.md
CHANGED
@@ -1,4 +1,12 @@
|
|
1
|
-
|
1
|
+
## 0.12.0 - 2023/05/23
|
2
|
+
|
3
|
+
* Remove support for ruby < 2.6
|
4
|
+
|
5
|
+
* Remove support for .Fixnum and .Bignum, .Integer is now used
|
6
|
+
everywhere. To ease the transition, Fixum and Bignum still exist
|
7
|
+
in the finitio/data stdlib schema, but will be removed in 0.13.x
|
8
|
+
|
9
|
+
## 0.11.4 - 2023/01/06
|
2
10
|
|
3
11
|
* The proxy resolution is fixed and clarified. When compiling
|
4
12
|
a system, all proxies are actually replaced by their actual
|
@@ -13,27 +21,27 @@
|
|
13
21
|
* Generated names of instantiated high order types are better
|
14
22
|
(e.g. Collection<String>).
|
15
23
|
|
16
|
-
|
24
|
+
## 0.11.3 - 2023/01/06
|
17
25
|
|
18
26
|
* Fix json_schema generation on unresolved ProxyTypes. We use
|
19
27
|
"object" by default, waiting for a better support for recursive
|
20
28
|
types.
|
21
29
|
|
22
|
-
|
30
|
+
## 0.11.2 - 2023/01/06
|
23
31
|
|
24
32
|
* Fix json_schema generation on builtin_type NilClass. "null"
|
25
33
|
is not a valid value, we now use "string" instead.
|
26
34
|
|
27
|
-
|
35
|
+
## 0.11.1 - 2021/12/09
|
28
36
|
|
29
37
|
* Fix github actions and extend test grid.
|
30
38
|
|
31
|
-
|
39
|
+
## 0.11.0 - 2021/12/09
|
32
40
|
|
33
41
|
* Fix json schema generation of Boolean and union types with a |Nil
|
34
42
|
* Add support for dashses in attribute names (tuple & relation types).
|
35
43
|
|
36
|
-
|
44
|
+
## 0.10.0 - 2021/01/11
|
37
45
|
|
38
46
|
* Upgrade all dependencies.
|
39
47
|
|
@@ -41,18 +49,18 @@
|
|
41
49
|
|
42
50
|
* Fix code and build under Ruby 3.0.
|
43
51
|
|
44
|
-
|
52
|
+
## 0.9.1 - 2020/12/24
|
45
53
|
|
46
54
|
* Fixes a bug where proxy types are not properly resolved when used
|
47
55
|
in a heading extra, e.g. `{ ...: Proxy }`
|
48
56
|
|
49
|
-
|
57
|
+
## 0.9.0 - 2020/12/16
|
50
58
|
|
51
59
|
* Add Type#to_json_schema that converts Finitio types to JSON schema
|
52
60
|
representations. This first implementation skips all constraints on sub types,
|
53
61
|
though. You need to explicitly require 'finitio/json_schema' to use it.
|
54
62
|
|
55
|
-
|
63
|
+
## 0.8.0 - 2019/10/21
|
56
64
|
|
57
65
|
* Add `Type#unconstrained` that returns a super type with all user specific
|
58
66
|
constraints removed on sub types, recursively on all non scalar types.
|
@@ -62,7 +70,7 @@
|
|
62
70
|
* Add support for random data generation through `Finitio::Generation`.
|
63
71
|
Please `require 'finitio/generation'` to use it.
|
64
72
|
|
65
|
-
|
73
|
+
## 0.7.0 / 2019-02-28
|
66
74
|
|
67
75
|
* Implement (basic) @import feature, working with relative paths
|
68
76
|
and a standard library. The standard library systems are memoized
|
@@ -75,28 +83,28 @@
|
|
75
83
|
* WARN: Finitio::DEFAULT_SYSTEM is deprecated. Use @import
|
76
84
|
finitio/data instead.
|
77
85
|
|
78
|
-
|
86
|
+
## 0.6.1 / 2018-03-23
|
79
87
|
|
80
88
|
* Fix support for typed extra attributes, a KeyError was raised when
|
81
89
|
keys were Symbols and not Strings.
|
82
90
|
|
83
|
-
|
91
|
+
## 0.6.0 / 2018-02-17
|
84
92
|
|
85
93
|
* Add support for typed extra attributes, e.g. { ...: Integer }
|
86
94
|
|
87
|
-
|
95
|
+
## 0.5.2 / 2017-01-08
|
88
96
|
|
89
97
|
* Disable memoization in parser because it leads to terrible performance
|
90
98
|
issues on some schemas.
|
91
99
|
* Avoid alternatives on high-level rules (Union, SubType) to prevent many
|
92
100
|
fallbacks that kill performance without memoization enabled.
|
93
101
|
|
94
|
-
|
102
|
+
## 0.5.1 / 2015-09-22
|
95
103
|
|
96
104
|
* Enabled memoization in parser to avoid very long parsing time on complex
|
97
105
|
schemas.
|
98
106
|
|
99
|
-
|
107
|
+
## 0.5.0 / 2015-09-18
|
100
108
|
|
101
109
|
* Breaking changes on public API
|
102
110
|
|
@@ -162,29 +170,29 @@
|
|
162
170
|
* Make Finitio compatible with both Citrus 2.4.x and Citrus 3.x
|
163
171
|
* Fixed parsing of constraint expressions having inner parentheses
|
164
172
|
|
165
|
-
|
173
|
+
## 0.4.1 / 2014-03-20
|
166
174
|
|
167
175
|
* Fixed access to the default system that lead to 'Unknown system
|
168
176
|
Finitio/default (Finitio::Error)'
|
169
177
|
|
170
|
-
|
178
|
+
## 0.4.0 / 2014-03-20
|
171
179
|
|
172
180
|
* Finitio(-rb) is born from the sources of Q(rb) 0.3.0
|
173
181
|
* Finitio.parse now recognizes Path-like objects (responding to :to_path),
|
174
182
|
allowing to parse files directly (through Pathname, Path, etc.).
|
175
183
|
|
176
|
-
|
184
|
+
## 0.3.0 / 2014-03-09
|
177
185
|
|
178
186
|
* Added AnyType abstraction, aka '.'
|
179
187
|
* Added support for external contracts in ADTs
|
180
188
|
* Added support for extracting an Abstract Syntax Tree from parsing result
|
181
189
|
* Allows camelCasing in constraint names
|
182
190
|
|
183
|
-
|
191
|
+
## 0.2.0 / 2014-03-04
|
184
192
|
|
185
193
|
* Fix dependencies in gemspec (judofyr)
|
186
194
|
|
187
|
-
|
195
|
+
## 0.1.0 / 2014-03-03
|
188
196
|
|
189
197
|
* Enhancements
|
190
198
|
|
data/Gemfile.lock
CHANGED
@@ -1,21 +1,21 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
finitio (0.
|
4
|
+
finitio (0.12.0)
|
5
5
|
citrus (>= 3.0, < 4.0)
|
6
6
|
|
7
7
|
GEM
|
8
8
|
remote: https://rubygems.org/
|
9
9
|
specs:
|
10
|
-
activesupport (
|
10
|
+
activesupport (7.0.4.3)
|
11
11
|
concurrent-ruby (~> 1.0, >= 1.0.2)
|
12
|
-
i18n (>=
|
13
|
-
minitest (
|
14
|
-
tzinfo (~>
|
12
|
+
i18n (>= 1.6, < 2)
|
13
|
+
minitest (>= 5.1)
|
14
|
+
tzinfo (~> 2.0)
|
15
15
|
awesome_print (1.9.2)
|
16
16
|
builder (3.2.4)
|
17
17
|
citrus (3.0.2)
|
18
|
-
concurrent-ruby (1.
|
18
|
+
concurrent-ruby (1.2.2)
|
19
19
|
coveralls (0.8.23)
|
20
20
|
json (>= 1.8, < 3)
|
21
21
|
simplecov (~> 0.16.1)
|
@@ -54,16 +54,16 @@ GEM
|
|
54
54
|
cucumber-cucumber-expressions (~> 10.1, >= 10.1.0)
|
55
55
|
cucumber-messages (~> 12.2, >= 12.2.0)
|
56
56
|
diff-lcs (1.3)
|
57
|
-
docile (1.
|
57
|
+
docile (1.4.0)
|
58
58
|
ffi (1.15.5)
|
59
|
-
i18n (1.
|
59
|
+
i18n (1.13.0)
|
60
60
|
concurrent-ruby (~> 1.0)
|
61
61
|
json (2.6.3)
|
62
62
|
middleware (0.1.0)
|
63
|
-
minitest (5.
|
63
|
+
minitest (5.18.0)
|
64
64
|
multi_json (1.15.0)
|
65
65
|
multi_test (0.1.2)
|
66
|
-
path (2.0
|
66
|
+
path (2.1.0)
|
67
67
|
protobuf-cucumber (3.10.8)
|
68
68
|
activesupport (>= 3.2)
|
69
69
|
middleware
|
@@ -74,12 +74,12 @@ GEM
|
|
74
74
|
rspec-core (~> 3.12.0)
|
75
75
|
rspec-expectations (~> 3.12.0)
|
76
76
|
rspec-mocks (~> 3.12.0)
|
77
|
-
rspec-core (3.12.
|
77
|
+
rspec-core (3.12.2)
|
78
78
|
rspec-support (~> 3.12.0)
|
79
|
-
rspec-expectations (3.12.
|
79
|
+
rspec-expectations (3.12.3)
|
80
80
|
diff-lcs (>= 1.2.0, < 2.0)
|
81
81
|
rspec-support (~> 3.12.0)
|
82
|
-
rspec-mocks (3.12.
|
82
|
+
rspec-mocks (3.12.5)
|
83
83
|
diff-lcs (>= 1.2.0, < 2.0)
|
84
84
|
rspec-support (~> 3.12.0)
|
85
85
|
rspec-support (3.12.0)
|
@@ -89,16 +89,16 @@ GEM
|
|
89
89
|
simplecov-html (~> 0.10.0)
|
90
90
|
simplecov-html (0.10.2)
|
91
91
|
sync (0.5.0)
|
92
|
-
sys-uname (1.2.
|
92
|
+
sys-uname (1.2.3)
|
93
93
|
ffi (~> 1.1)
|
94
94
|
term-ansicolor (1.7.1)
|
95
95
|
tins (~> 1.0)
|
96
|
-
thor (1.2.
|
96
|
+
thor (1.2.2)
|
97
97
|
thread_safe (0.3.6)
|
98
98
|
tins (1.32.1)
|
99
99
|
sync
|
100
|
-
tzinfo (
|
101
|
-
|
100
|
+
tzinfo (2.0.6)
|
101
|
+
concurrent-ruby (~> 1.0)
|
102
102
|
|
103
103
|
PLATFORMS
|
104
104
|
x86_64-linux
|
@@ -109,7 +109,7 @@ DEPENDENCIES
|
|
109
109
|
cucumber (~> 4.1)
|
110
110
|
finitio!
|
111
111
|
multi_json (~> 1.15)
|
112
|
-
path (>= 2.
|
112
|
+
path (>= 2.1, < 3.0)
|
113
113
|
rake (~> 13.0)
|
114
114
|
rspec (~> 3.0)
|
115
115
|
|
data/finitio.gemspec
CHANGED
@@ -19,13 +19,13 @@ Gem::Specification.new do |s|
|
|
19
19
|
s.test_files = Dir["test/**/*"] + Dir["spec/**/*"]
|
20
20
|
s.bindir = "bin"
|
21
21
|
s.executables = (Dir["bin/*"]).collect{|f| File.basename(f)}
|
22
|
-
|
22
|
+
|
23
23
|
s.add_dependency("citrus", ">= 3.0", "< 4.0")
|
24
|
-
|
24
|
+
|
25
25
|
s.add_development_dependency("rake", "~> 13.0")
|
26
26
|
s.add_development_dependency("rspec", "~> 3.0")
|
27
27
|
s.add_development_dependency("cucumber", "~> 4.1")
|
28
|
-
s.add_development_dependency("path", ">= 2.
|
28
|
+
s.add_development_dependency("path", ">= 2.1", "< 3.0")
|
29
29
|
s.add_development_dependency("awesome_print", "~> 1.8")
|
30
30
|
s.add_development_dependency("coveralls", "~> 0.8")
|
31
31
|
s.add_development_dependency("multi_json", "~> 1.15")
|
data/lib/finitio/type/ad_type.rb
CHANGED
@@ -30,7 +30,7 @@ module Finitio
|
|
30
30
|
# rgb_infotype = TupleType.new(...)
|
31
31
|
#
|
32
32
|
# # The RGB contract converter, an object that responds to `call` to
|
33
|
-
# # convert from a valid Hash[r:
|
33
|
+
# # convert from a valid Hash[r: Integer, ...] to a ColorImpl instance.
|
34
34
|
# rgb_contract = ...
|
35
35
|
#
|
36
36
|
# AdType.new(ColorImpl, rgb: [rgb_infotype, rgb_contract], hex: ...)
|
@@ -3,21 +3,21 @@ module Finitio
|
|
3
3
|
# A BuiltinType generator allows capuring an information type to a type of
|
4
4
|
# the host language, here a Ruby class. For instance,
|
5
5
|
#
|
6
|
-
# Int := BuiltinType(ruby.
|
6
|
+
# Int := BuiltinType(ruby.Integer)
|
7
7
|
#
|
8
8
|
# The set of values captured by the information type is the same set of
|
9
9
|
# values that can be represented by the host type. In the example, `Int`
|
10
|
-
# captures the same set of numbers as ruby's
|
10
|
+
# captures the same set of numbers as ruby's Integer.
|
11
11
|
#
|
12
12
|
# The ruby class is used as concrete representation of the information type.
|
13
13
|
# In the example:
|
14
14
|
#
|
15
|
-
# R(Int) =
|
15
|
+
# R(Int) = Integer
|
16
16
|
#
|
17
17
|
# Accordingly, the `dress` transformation function has the following signature:
|
18
18
|
#
|
19
19
|
# dress :: Alpha -> Int throws TypeError
|
20
|
-
# dress :: Object ->
|
20
|
+
# dress :: Object -> Integer throws TypeError
|
21
21
|
#
|
22
22
|
class BuiltinType < Type
|
23
23
|
|
@@ -8,7 +8,7 @@ module Finitio
|
|
8
8
|
#
|
9
9
|
# This class allows capturing those information types, as in:
|
10
10
|
#
|
11
|
-
# Length = BuiltinType.new(
|
11
|
+
# Length = BuiltinType.new(Integer)
|
12
12
|
# Angle = BuiltinType.new(Float)
|
13
13
|
# Point = StructType.new([Length, Angle])
|
14
14
|
#
|
@@ -16,7 +16,7 @@ module Finitio
|
|
16
16
|
# values map to the concrete representations of each component type:
|
17
17
|
#
|
18
18
|
# R(Point) = Array[R(Length) ^ R(Angle)]
|
19
|
-
# = Array[
|
19
|
+
# = Array[Integer ^ Float]
|
20
20
|
# = Array[Numeric]
|
21
21
|
#
|
22
22
|
# where `^` denotes the `least common super type` operator on ruby classes.
|
@@ -18,12 +18,12 @@ module Finitio
|
|
18
18
|
# The concrete representation of the super type is kept as representation
|
19
19
|
# of the sub type. In other words:
|
20
20
|
#
|
21
|
-
# R(Byte) = R(Int) =
|
21
|
+
# R(Byte) = R(Int) = Integer
|
22
22
|
#
|
23
23
|
# Accordingly, the `dress` transformation function has the following signature:
|
24
24
|
#
|
25
25
|
# dress :: Alpha -> Byte throws TypeError
|
26
|
-
# dress :: Object ->
|
26
|
+
# dress :: Object -> Integer throws TypeError
|
27
27
|
#
|
28
28
|
class SubType < Type
|
29
29
|
|
@@ -7,7 +7,7 @@ module Finitio
|
|
7
7
|
#
|
8
8
|
# This class allows capturing those information types, as in:
|
9
9
|
#
|
10
|
-
# Length = BuiltinType.new(
|
10
|
+
# Length = BuiltinType.new(Integer)
|
11
11
|
# Angle = BuiltinType.new(Float)
|
12
12
|
# Point = TupleType.new(Heading.new([
|
13
13
|
# Attribute.new(:r, Length),
|
@@ -19,7 +19,7 @@ module Finitio
|
|
19
19
|
# type:
|
20
20
|
#
|
21
21
|
# R(Point) = Hash[r: R(Length), theta: R(Angle)]
|
22
|
-
# = Hash[r:
|
22
|
+
# = Hash[r: Integer, theta: Float]
|
23
23
|
#
|
24
24
|
# Accordingly, the `dress` transformation function has the signature below.
|
25
25
|
# It expects it's Alpha/Object argument to be a Hash with all and only the
|
@@ -27,7 +27,7 @@ module Finitio
|
|
27
27
|
# applies on every attribute value according to their respective type.
|
28
28
|
#
|
29
29
|
# dress :: Alpha -> Point throws TypeError
|
30
|
-
# dress :: Object -> Hash[r:
|
30
|
+
# dress :: Object -> Hash[r: Integer, theta: Float] throws TypeError
|
31
31
|
#
|
32
32
|
class TupleType < Type
|
33
33
|
include HeadingBasedType
|
@@ -8,7 +8,7 @@ module Finitio
|
|
8
8
|
#
|
9
9
|
# This class allows capturing such union types, as follows:
|
10
10
|
#
|
11
|
-
# Int = BuiltinType.new(
|
11
|
+
# Int = BuiltinType.new(Integer)
|
12
12
|
# Real = BuiltinType.new(Float)
|
13
13
|
# Numeric = UnionType.new([ Int, Real ])
|
14
14
|
#
|
@@ -17,7 +17,7 @@ module Finitio
|
|
17
17
|
# value ends the process and the value is simply returned. Accordingly,
|
18
18
|
# the concrete representation will be
|
19
19
|
#
|
20
|
-
# R(Numeric) = R(Int) ^ R(Real) =
|
20
|
+
# R(Numeric) = R(Int) ^ R(Real) = Integer ^ Float = Numeric
|
21
21
|
#
|
22
22
|
# where `^` denotes the `least common super type` operator on ruby classes.
|
23
23
|
#
|
data/lib/finitio/version.rb
CHANGED
data/spec/finitio/test_ast.rb
CHANGED
@@ -3,7 +3,7 @@ describe Finitio, "ast" do
|
|
3
3
|
|
4
4
|
subject{
|
5
5
|
Finitio.ast <<-EOF
|
6
|
-
Posint = .
|
6
|
+
Posint = .Integer( i | i>=0 )
|
7
7
|
Point = { x: Posint, y: Posint }
|
8
8
|
{{ p: Point }}
|
9
9
|
EOF
|
@@ -14,7 +14,7 @@ describe Finitio, "ast" do
|
|
14
14
|
[ :type_def,
|
15
15
|
"Posint",
|
16
16
|
[ :sub_type,
|
17
|
-
[:builtin_type, "
|
17
|
+
[:builtin_type, "Integer"],
|
18
18
|
[ :constraint,
|
19
19
|
"default",
|
20
20
|
[:fn, [:parameters, "i"], [:source, "i>=0"] ]
|
data/spec/finitio/test_parse.rb
CHANGED
data/spec/finitio/test_system.rb
CHANGED
@@ -26,13 +26,11 @@ module Finitio
|
|
26
26
|
end
|
27
27
|
end
|
28
28
|
|
29
|
-
|
30
|
-
|
31
|
-
let(:ruby_type){ rt }
|
29
|
+
context "with Integer" do
|
30
|
+
let(:ruby_type){ Integer }
|
32
31
|
|
33
|
-
|
34
|
-
|
35
|
-
end
|
32
|
+
it 'works' do
|
33
|
+
expect(subject).to eql({ type: "integer" })
|
36
34
|
end
|
37
35
|
end
|
38
36
|
|
@@ -8,9 +8,9 @@ module Finitio
|
|
8
8
|
|
9
9
|
it{ should be_a(SubType) }
|
10
10
|
|
11
|
-
it 'should have the BuiltinType(
|
11
|
+
it 'should have the BuiltinType(Integer) super type' do
|
12
12
|
expect(subject.super_type).to be_a(BuiltinType)
|
13
|
-
expect(subject.super_type.ruby_type).to be(
|
13
|
+
expect(subject.super_type.ruby_type).to be(Integer)
|
14
14
|
end
|
15
15
|
|
16
16
|
it 'should have the correct constraint' do
|
@@ -22,7 +22,7 @@ module Finitio
|
|
22
22
|
|
23
23
|
context 'when use with a ruby class and a block' do
|
24
24
|
subject{
|
25
|
-
factory.type(
|
25
|
+
factory.type(Integer){|i| i>=0 and i<=10 }
|
26
26
|
}
|
27
27
|
|
28
28
|
it_should_behave_like "The 1..10 type"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: finitio
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.12.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Bernard Lambeau
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-05-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: citrus
|
@@ -78,7 +78,7 @@ dependencies:
|
|
78
78
|
requirements:
|
79
79
|
- - ">="
|
80
80
|
- !ruby/object:Gem::Version
|
81
|
-
version: '2.
|
81
|
+
version: '2.1'
|
82
82
|
- - "<"
|
83
83
|
- !ruby/object:Gem::Version
|
84
84
|
version: '3.0'
|
@@ -88,7 +88,7 @@ dependencies:
|
|
88
88
|
requirements:
|
89
89
|
- - ">="
|
90
90
|
- !ruby/object:Gem::Version
|
91
|
-
version: '2.
|
91
|
+
version: '2.1'
|
92
92
|
- - "<"
|
93
93
|
- !ruby/object:Gem::Version
|
94
94
|
version: '3.0'
|
@@ -486,199 +486,198 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
486
486
|
- !ruby/object:Gem::Version
|
487
487
|
version: '0'
|
488
488
|
requirements: []
|
489
|
-
|
490
|
-
rubygems_version: 2.6.14.4
|
489
|
+
rubygems_version: 3.3.26
|
491
490
|
signing_key:
|
492
491
|
specification_version: 4
|
493
492
|
summary: Finitio - in Ruby
|
494
493
|
test_files:
|
495
|
-
- spec/
|
496
|
-
- spec/
|
497
|
-
- spec/
|
498
|
-
- spec/
|
499
|
-
- spec/
|
494
|
+
- spec/attribute/test_equality.rb
|
495
|
+
- spec/attribute/test_fetch_on.rb
|
496
|
+
- spec/attribute/test_initialize.rb
|
497
|
+
- spec/attribute/test_optional.rb
|
498
|
+
- spec/attribute/test_required.rb
|
499
|
+
- spec/attribute/test_to_name.rb
|
500
500
|
- spec/constraint/test_anonymous.rb
|
501
501
|
- spec/constraint/test_equality.rb
|
502
502
|
- spec/constraint/test_name.rb
|
503
|
+
- spec/constraint/test_named.rb
|
503
504
|
- spec/constraint/test_triple_equal.rb
|
505
|
+
- spec/finitio/system.fio
|
506
|
+
- spec/finitio/test_ast.rb
|
507
|
+
- spec/finitio/test_parse.rb
|
508
|
+
- spec/finitio/test_stdlib_memoization.rb
|
509
|
+
- spec/finitio/test_system.rb
|
510
|
+
- spec/generation/test_generation.rb
|
511
|
+
- spec/heading/test_allow_extra.rb
|
512
|
+
- spec/heading/test_each.rb
|
513
|
+
- spec/heading/test_equality.rb
|
514
|
+
- spec/heading/test_hash.rb
|
515
|
+
- spec/heading/test_hash_get.rb
|
516
|
+
- spec/heading/test_initialize.rb
|
517
|
+
- spec/heading/test_looks_similar.rb
|
518
|
+
- spec/heading/test_multi.rb
|
519
|
+
- spec/heading/test_size.rb
|
520
|
+
- spec/heading/test_suppremum.rb
|
521
|
+
- spec/heading/test_to_name.rb
|
504
522
|
- spec/inference/test_inference.rb
|
505
|
-
- spec/
|
506
|
-
- spec/
|
507
|
-
- spec/
|
508
|
-
- spec/
|
509
|
-
- spec/
|
510
|
-
- spec/
|
511
|
-
- spec/
|
512
|
-
- spec/
|
513
|
-
- spec/
|
514
|
-
- spec/
|
515
|
-
- spec/
|
516
|
-
- spec/
|
517
|
-
- spec/
|
518
|
-
- spec/
|
519
|
-
- spec/
|
520
|
-
- spec/
|
521
|
-
- spec/
|
522
|
-
- spec/
|
523
|
-
- spec/
|
524
|
-
- spec/
|
523
|
+
- spec/json_schema/test_ad_type.rb
|
524
|
+
- spec/json_schema/test_alias_type.rb
|
525
|
+
- spec/json_schema/test_any_type.rb
|
526
|
+
- spec/json_schema/test_builtin_type.rb
|
527
|
+
- spec/json_schema/test_multi_relation_type.rb
|
528
|
+
- spec/json_schema/test_multi_tuple_type.rb
|
529
|
+
- spec/json_schema/test_recursive_type.rb
|
530
|
+
- spec/json_schema/test_relation_type.rb
|
531
|
+
- spec/json_schema/test_seq_type.rb
|
532
|
+
- spec/json_schema/test_set_type.rb
|
533
|
+
- spec/json_schema/test_struct_type.rb
|
534
|
+
- spec/json_schema/test_sub_type.rb
|
535
|
+
- spec/json_schema/test_tuple_type.rb
|
536
|
+
- spec/json_schema/test_union_type.rb
|
537
|
+
- spec/regression/test_dress_on_recursive_type.rb
|
538
|
+
- spec/regression/test_heading_extra_are_proxy_resolved.rb
|
539
|
+
- spec/regression/test_name_of_generic_types.rb
|
540
|
+
- spec/spec_helper.rb
|
541
|
+
- spec/support/test_compare_attrs.rb
|
542
|
+
- spec/support/test_proc_with_code.rb
|
543
|
+
- spec/syntax/expr/test_free_variables.rb
|
544
|
+
- spec/syntax/expr/test_to_proc_source.rb
|
545
|
+
- spec/syntax/nodes/imported.fio
|
546
|
+
- spec/syntax/nodes/test_ad_type.rb
|
547
|
+
- spec/syntax/nodes/test_any_type.rb
|
548
|
+
- spec/syntax/nodes/test_attribute.rb
|
549
|
+
- spec/syntax/nodes/test_builtin_type.rb
|
550
|
+
- spec/syntax/nodes/test_comment.rb
|
551
|
+
- spec/syntax/nodes/test_constraint_def.rb
|
552
|
+
- spec/syntax/nodes/test_constraints.rb
|
553
|
+
- spec/syntax/nodes/test_contract.rb
|
554
|
+
- spec/syntax/nodes/test_expression.rb
|
555
|
+
- spec/syntax/nodes/test_heading.rb
|
556
|
+
- spec/syntax/nodes/test_import.rb
|
557
|
+
- spec/syntax/nodes/test_metadata.rb
|
558
|
+
- spec/syntax/nodes/test_named_constraint.rb
|
559
|
+
- spec/syntax/nodes/test_relation_type.rb
|
560
|
+
- spec/syntax/nodes/test_seq_type.rb
|
561
|
+
- spec/syntax/nodes/test_set_type.rb
|
562
|
+
- spec/syntax/nodes/test_spacing.rb
|
563
|
+
- spec/syntax/nodes/test_struct_type.rb
|
564
|
+
- spec/syntax/nodes/test_sub_type.rb
|
565
|
+
- spec/syntax/nodes/test_system.rb
|
566
|
+
- spec/syntax/nodes/test_tuple_type.rb
|
567
|
+
- spec/syntax/nodes/test_type_def.rb
|
568
|
+
- spec/syntax/nodes/test_type_ref.rb
|
569
|
+
- spec/syntax/nodes/test_union_type.rb
|
570
|
+
- spec/syntax/nodes/test_unnamed_constraint.rb
|
571
|
+
- spec/syntax/test_compile.rb
|
572
|
+
- spec/syntax/test_compile_type.rb
|
573
|
+
- spec/system/fixtures/system.fio
|
574
|
+
- spec/system/fixtures/with-duplicates.fio
|
575
|
+
- spec/system/test_add_type.rb
|
576
|
+
- spec/system/test_check_and_warn.rb
|
577
|
+
- spec/system/test_dsl.rb
|
578
|
+
- spec/system/test_dup.rb
|
579
|
+
- spec/system/test_fetch.rb
|
580
|
+
- spec/system/test_get_type.rb
|
581
|
+
- spec/system/test_initialize.rb
|
582
|
+
- spec/test_finitio.rb
|
583
|
+
- spec/type/ad_type/test_default_name.rb
|
584
|
+
- spec/type/ad_type/test_dress.rb
|
585
|
+
- spec/type/ad_type/test_include.rb
|
586
|
+
- spec/type/ad_type/test_initialize.rb
|
587
|
+
- spec/type/ad_type/test_name.rb
|
588
|
+
- spec/type/alias_type/test_default_name.rb
|
525
589
|
- spec/type/alias_type/test_delegation.rb
|
526
590
|
- spec/type/alias_type/test_name.rb
|
527
|
-
- spec/type/
|
528
|
-
- spec/type/
|
529
|
-
- spec/type/
|
530
|
-
- spec/type/
|
531
|
-
- spec/type/
|
532
|
-
- spec/type/
|
533
|
-
- spec/type/
|
534
|
-
- spec/type/
|
591
|
+
- spec/type/any_type/test_default_name.rb
|
592
|
+
- spec/type/any_type/test_dress.rb
|
593
|
+
- spec/type/any_type/test_equality.rb
|
594
|
+
- spec/type/any_type/test_include.rb
|
595
|
+
- spec/type/any_type/test_initialize.rb
|
596
|
+
- spec/type/any_type/test_name.rb
|
597
|
+
- spec/type/builtin_type/test_default_name.rb
|
598
|
+
- spec/type/builtin_type/test_dress.rb
|
599
|
+
- spec/type/builtin_type/test_equality.rb
|
600
|
+
- spec/type/builtin_type/test_include.rb
|
601
|
+
- spec/type/builtin_type/test_initialize.rb
|
602
|
+
- spec/type/builtin_type/test_name.rb
|
603
|
+
- spec/type/multi_relation_type/test_default_name.rb
|
604
|
+
- spec/type/multi_relation_type/test_dress.rb
|
605
|
+
- spec/type/multi_relation_type/test_equality.rb
|
606
|
+
- spec/type/multi_relation_type/test_include.rb
|
607
|
+
- spec/type/multi_relation_type/test_initialize.rb
|
608
|
+
- spec/type/multi_relation_type/test_name.rb
|
609
|
+
- spec/type/multi_tuple_type/test_default_name.rb
|
610
|
+
- spec/type/multi_tuple_type/test_dress.rb
|
611
|
+
- spec/type/multi_tuple_type/test_equality.rb
|
612
|
+
- spec/type/multi_tuple_type/test_include.rb
|
613
|
+
- spec/type/multi_tuple_type/test_initialize.rb
|
614
|
+
- spec/type/multi_tuple_type/test_name.rb
|
615
|
+
- spec/type/relation_type/test_default_name.rb
|
535
616
|
- spec/type/relation_type/test_dress.rb
|
536
617
|
- spec/type/relation_type/test_equality.rb
|
618
|
+
- spec/type/relation_type/test_include.rb
|
619
|
+
- spec/type/relation_type/test_initialize.rb
|
537
620
|
- spec/type/relation_type/test_name.rb
|
538
|
-
- spec/type/relation_type/test_default_name.rb
|
539
621
|
- spec/type/relation_type/test_suppremum.rb
|
540
|
-
- spec/type/
|
541
|
-
- spec/type/seq_type/test_include.rb
|
622
|
+
- spec/type/seq_type/test_default_name.rb
|
542
623
|
- spec/type/seq_type/test_dress.rb
|
543
624
|
- spec/type/seq_type/test_equality.rb
|
625
|
+
- spec/type/seq_type/test_include.rb
|
626
|
+
- spec/type/seq_type/test_initialize.rb
|
544
627
|
- spec/type/seq_type/test_name.rb
|
545
|
-
- spec/type/seq_type/test_default_name.rb
|
546
628
|
- spec/type/seq_type/test_suppremum.rb
|
547
|
-
- spec/type/
|
548
|
-
- spec/type/builtin_type/test_include.rb
|
549
|
-
- spec/type/builtin_type/test_dress.rb
|
550
|
-
- spec/type/builtin_type/test_equality.rb
|
551
|
-
- spec/type/builtin_type/test_name.rb
|
552
|
-
- spec/type/builtin_type/test_default_name.rb
|
553
|
-
- spec/type/builtin_type/test_initialize.rb
|
554
|
-
- spec/type/multi_tuple_type/test_include.rb
|
555
|
-
- spec/type/multi_tuple_type/test_dress.rb
|
556
|
-
- spec/type/multi_tuple_type/test_equality.rb
|
557
|
-
- spec/type/multi_tuple_type/test_name.rb
|
558
|
-
- spec/type/multi_tuple_type/test_default_name.rb
|
559
|
-
- spec/type/multi_tuple_type/test_initialize.rb
|
560
|
-
- spec/type/ad_type/test_include.rb
|
561
|
-
- spec/type/ad_type/test_dress.rb
|
562
|
-
- spec/type/ad_type/test_name.rb
|
563
|
-
- spec/type/ad_type/test_default_name.rb
|
564
|
-
- spec/type/ad_type/test_initialize.rb
|
565
|
-
- spec/type/multi_relation_type/test_include.rb
|
566
|
-
- spec/type/multi_relation_type/test_dress.rb
|
567
|
-
- spec/type/multi_relation_type/test_equality.rb
|
568
|
-
- spec/type/multi_relation_type/test_name.rb
|
569
|
-
- spec/type/multi_relation_type/test_default_name.rb
|
570
|
-
- spec/type/multi_relation_type/test_initialize.rb
|
571
|
-
- spec/type/any_type/test_include.rb
|
572
|
-
- spec/type/any_type/test_dress.rb
|
573
|
-
- spec/type/any_type/test_equality.rb
|
574
|
-
- spec/type/any_type/test_name.rb
|
575
|
-
- spec/type/any_type/test_default_name.rb
|
576
|
-
- spec/type/any_type/test_initialize.rb
|
577
|
-
- spec/type/test_unconstrained.rb
|
578
|
-
- spec/type/union_type/test_include.rb
|
579
|
-
- spec/type/union_type/test_dress.rb
|
580
|
-
- spec/type/union_type/test_equality.rb
|
581
|
-
- spec/type/union_type/test_name.rb
|
582
|
-
- spec/type/union_type/test_default_name.rb
|
583
|
-
- spec/type/union_type/test_suppremum.rb
|
584
|
-
- spec/type/union_type/test_initialize.rb
|
585
|
-
- spec/type/sub_type/test_include.rb
|
586
|
-
- spec/type/sub_type/test_dress.rb
|
587
|
-
- spec/type/sub_type/test_equality.rb
|
588
|
-
- spec/type/sub_type/test_name.rb
|
589
|
-
- spec/type/sub_type/test_default_name.rb
|
590
|
-
- spec/type/sub_type/test_initialize.rb
|
591
|
-
- spec/type/set_type/test_include.rb
|
629
|
+
- spec/type/set_type/test_default_name.rb
|
592
630
|
- spec/type/set_type/test_dress.rb
|
593
631
|
- spec/type/set_type/test_equality.rb
|
632
|
+
- spec/type/set_type/test_include.rb
|
633
|
+
- spec/type/set_type/test_initialize.rb
|
594
634
|
- spec/type/set_type/test_name.rb
|
595
|
-
- spec/type/set_type/test_default_name.rb
|
596
635
|
- spec/type/set_type/test_suppremum.rb
|
597
|
-
- spec/type/
|
636
|
+
- spec/type/struct_type/test_default_name.rb
|
637
|
+
- spec/type/struct_type/test_dress.rb
|
638
|
+
- spec/type/struct_type/test_equality.rb
|
639
|
+
- spec/type/struct_type/test_include.rb
|
640
|
+
- spec/type/struct_type/test_initialize.rb
|
641
|
+
- spec/type/struct_type/test_name.rb
|
642
|
+
- spec/type/sub_type/test_default_name.rb
|
643
|
+
- spec/type/sub_type/test_dress.rb
|
644
|
+
- spec/type/sub_type/test_equality.rb
|
645
|
+
- spec/type/sub_type/test_include.rb
|
646
|
+
- spec/type/sub_type/test_initialize.rb
|
647
|
+
- spec/type/sub_type/test_name.rb
|
598
648
|
- spec/type/test_suppremum.rb
|
599
|
-
- spec/type/
|
649
|
+
- spec/type/test_unconstrained.rb
|
650
|
+
- spec/type/tuple_type/test_default_name.rb
|
600
651
|
- spec/type/tuple_type/test_dress.rb
|
601
652
|
- spec/type/tuple_type/test_equality.rb
|
653
|
+
- spec/type/tuple_type/test_include.rb
|
654
|
+
- spec/type/tuple_type/test_initialize.rb
|
602
655
|
- spec/type/tuple_type/test_name.rb
|
603
|
-
- spec/type/tuple_type/test_default_name.rb
|
604
656
|
- spec/type/tuple_type/test_suppremum.rb
|
605
|
-
- spec/type/
|
606
|
-
- spec/
|
607
|
-
- spec/
|
608
|
-
- spec/
|
609
|
-
- spec/
|
610
|
-
- spec/
|
611
|
-
- spec/
|
612
|
-
- spec/
|
613
|
-
- spec/
|
614
|
-
- spec/
|
615
|
-
- spec/
|
616
|
-
- spec/
|
617
|
-
- spec/
|
618
|
-
- spec/
|
619
|
-
- spec/
|
620
|
-
- spec/
|
621
|
-
- spec/
|
622
|
-
- spec/
|
623
|
-
- spec/
|
624
|
-
- spec/
|
625
|
-
- spec/
|
626
|
-
- spec/
|
627
|
-
- spec/
|
628
|
-
- spec/
|
629
|
-
- spec/
|
630
|
-
- spec/
|
631
|
-
- spec/
|
632
|
-
- spec/json_schema/test_struct_type.rb
|
633
|
-
- spec/system/test_dsl.rb
|
634
|
-
- spec/system/test_get_type.rb
|
635
|
-
- spec/system/test_add_type.rb
|
636
|
-
- spec/system/test_dup.rb
|
637
|
-
- spec/system/fixtures/system.fio
|
638
|
-
- spec/system/fixtures/with-duplicates.fio
|
639
|
-
- spec/system/test_check_and_warn.rb
|
640
|
-
- spec/system/test_fetch.rb
|
641
|
-
- spec/system/test_initialize.rb
|
642
|
-
- spec/attribute/test_required.rb
|
643
|
-
- spec/attribute/test_optional.rb
|
644
|
-
- spec/attribute/test_equality.rb
|
645
|
-
- spec/attribute/test_fetch_on.rb
|
646
|
-
- spec/attribute/test_initialize.rb
|
647
|
-
- spec/attribute/test_to_name.rb
|
648
|
-
- spec/syntax/nodes/test_unnamed_constraint.rb
|
649
|
-
- spec/syntax/nodes/test_constraints.rb
|
650
|
-
- spec/syntax/nodes/test_tuple_type.rb
|
651
|
-
- spec/syntax/nodes/test_set_type.rb
|
652
|
-
- spec/syntax/nodes/test_heading.rb
|
653
|
-
- spec/syntax/nodes/test_comment.rb
|
654
|
-
- spec/syntax/nodes/test_spacing.rb
|
655
|
-
- spec/syntax/nodes/test_metadata.rb
|
656
|
-
- spec/syntax/nodes/test_type_ref.rb
|
657
|
-
- spec/syntax/nodes/test_relation_type.rb
|
658
|
-
- spec/syntax/nodes/test_contract.rb
|
659
|
-
- spec/syntax/nodes/test_ad_type.rb
|
660
|
-
- spec/syntax/nodes/test_constraint_def.rb
|
661
|
-
- spec/syntax/nodes/test_builtin_type.rb
|
662
|
-
- spec/syntax/nodes/test_system.rb
|
663
|
-
- spec/syntax/nodes/test_named_constraint.rb
|
664
|
-
- spec/syntax/nodes/test_type_def.rb
|
665
|
-
- spec/syntax/nodes/imported.fio
|
666
|
-
- spec/syntax/nodes/test_sub_type.rb
|
667
|
-
- spec/syntax/nodes/test_any_type.rb
|
668
|
-
- spec/syntax/nodes/test_seq_type.rb
|
669
|
-
- spec/syntax/nodes/test_union_type.rb
|
670
|
-
- spec/syntax/nodes/test_attribute.rb
|
671
|
-
- spec/syntax/nodes/test_import.rb
|
672
|
-
- spec/syntax/nodes/test_struct_type.rb
|
673
|
-
- spec/syntax/nodes/test_expression.rb
|
674
|
-
- spec/syntax/expr/test_free_variables.rb
|
675
|
-
- spec/syntax/expr/test_to_proc_source.rb
|
676
|
-
- spec/syntax/test_compile_type.rb
|
677
|
-
- spec/syntax/test_compile.rb
|
678
|
-
- spec/spec_helper.rb
|
679
|
-
- spec/finitio/system.fio
|
680
|
-
- spec/finitio/test_ast.rb
|
681
|
-
- spec/finitio/test_stdlib_memoization.rb
|
682
|
-
- spec/finitio/test_parse.rb
|
683
|
-
- spec/finitio/test_system.rb
|
684
|
-
- spec/generation/test_generation.rb
|
657
|
+
- spec/type/union_type/test_default_name.rb
|
658
|
+
- spec/type/union_type/test_dress.rb
|
659
|
+
- spec/type/union_type/test_equality.rb
|
660
|
+
- spec/type/union_type/test_include.rb
|
661
|
+
- spec/type/union_type/test_initialize.rb
|
662
|
+
- spec/type/union_type/test_name.rb
|
663
|
+
- spec/type/union_type/test_suppremum.rb
|
664
|
+
- spec/type_factory/dsl/test_adt.rb
|
665
|
+
- spec/type_factory/dsl/test_any.rb
|
666
|
+
- spec/type_factory/dsl/test_attribute.rb
|
667
|
+
- spec/type_factory/dsl/test_attributes.rb
|
668
|
+
- spec/type_factory/dsl/test_builtin.rb
|
669
|
+
- spec/type_factory/dsl/test_multi_relation.rb
|
670
|
+
- spec/type_factory/dsl/test_multi_tuple.rb
|
671
|
+
- spec/type_factory/dsl/test_relation.rb
|
672
|
+
- spec/type_factory/dsl/test_seq.rb
|
673
|
+
- spec/type_factory/dsl/test_set.rb
|
674
|
+
- spec/type_factory/dsl/test_struct.rb
|
675
|
+
- spec/type_factory/dsl/test_subtype.rb
|
676
|
+
- spec/type_factory/dsl/test_tuple.rb
|
677
|
+
- spec/type_factory/dsl/test_union.rb
|
678
|
+
- spec/type_factory/factory/test_builtin.rb
|
679
|
+
- spec/type_factory/factory/test_seq_type.rb
|
680
|
+
- spec/type_factory/factory/test_set_type.rb
|
681
|
+
- spec/type_factory/factory/test_struct_type.rb
|
682
|
+
- spec/type_factory/factory/test_sub_type.rb
|
683
|
+
- spec/type_factory/factory/test_tuple_type.rb
|