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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 29fd883abee1e98b436a1c8aa80ee32ffc9740dc
4
- data.tar.gz: 9aa135c687855dbdfb6a52e245d21c3488ef0128
2
+ SHA256:
3
+ metadata.gz: 92c67dd32e89dd6c4597b4a8456572bb1a5b3de07bdf58e88bcb9dc3f0874462
4
+ data.tar.gz: 4ecd7898e477113040613415f9bc2cc8f23bc3605d0f71a3ccaefbbe1eaf31ff
5
5
  SHA512:
6
- metadata.gz: 0af6653c37bc1fdb2e5aeef7f0d43e70f92d967658219b638c58a8039b975460f64ab80339d7d727aed716175cc722614973e387c5720315868bd6b8a6d1fc7c
7
- data.tar.gz: ef96c4bd3a7f4910b83acab224940afe7a1885be98eeddf5ce8542c0037d0c702da98e372f55a42638cb7cef3cfbf9394dd8c0d162daace35c6731e86083c061
6
+ metadata.gz: eb3042b639a82d469bb760807e6c94e1f70c39a3249420d30e339d5f004048e8abe6026de3b3b834e3703f88b3dd10a6d2937abdba5a183444af13609cc150b5
7
+ data.tar.gz: f44c30f37848ad1e0b8344487cc0f0353ad694ce31c535ff6dd4ae02e903bebc92d11b29ac78ae0aa7d21f7bce6ba3fbd7ecdceb2cb6d14aa4bd3f9d6fb5164a
data/CHANGELOG.md CHANGED
@@ -1,4 +1,12 @@
1
- # 0.11.4 - 2023/01/06
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
- # 0.11.3 - 2023/01/06
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
- # 0.11.2 - 2023/01/06
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
- # 0.11.1 - 2021/12/09
35
+ ## 0.11.1 - 2021/12/09
28
36
 
29
37
  * Fix github actions and extend test grid.
30
38
 
31
- # 0.11.0 - 2021/12/09
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
- # 0.10.0 - 2021/01/11
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
- # 0.9.1 - 2020/12/24
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
- # 0.9.0 - 2020/12/16
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
- # 0.8.0 - 2019/10/21
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
- # 0.7.0 / 2019-02-28
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
- # 0.6.1 / 2018-03-23
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
- # 0.6.0 / 2018-02-17
91
+ ## 0.6.0 / 2018-02-17
84
92
 
85
93
  * Add support for typed extra attributes, e.g. { ...: Integer }
86
94
 
87
- # 0.5.2 / 2017-01-08
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
- # 0.5.1 / 2015-09-22
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
- # 0.5.0 / 2015-09-18
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
- # 0.4.1 / 2014-03-20
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
- # 0.4.0 / 2014-03-20
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
- # 0.3.0 / 2014-03-09
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
- # 0.2.0 / 2014-03-04
191
+ ## 0.2.0 / 2014-03-04
184
192
 
185
193
  * Fix dependencies in gemspec (judofyr)
186
194
 
187
- # 0.1.0 / 2014-03-03
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.11.4)
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 (5.2.8.1)
10
+ activesupport (7.0.4.3)
11
11
  concurrent-ruby (~> 1.0, >= 1.0.2)
12
- i18n (>= 0.7, < 2)
13
- minitest (~> 5.1)
14
- tzinfo (~> 1.1)
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.1.10)
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.3.5)
57
+ docile (1.4.0)
58
58
  ffi (1.15.5)
59
- i18n (1.12.0)
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.15.0)
63
+ minitest (5.18.0)
64
64
  multi_json (1.15.0)
65
65
  multi_test (0.1.2)
66
- path (2.0.1)
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.0)
77
+ rspec-core (3.12.2)
78
78
  rspec-support (~> 3.12.0)
79
- rspec-expectations (3.12.1)
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.1)
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.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.1)
96
+ thor (1.2.2)
97
97
  thread_safe (0.3.6)
98
98
  tins (1.32.1)
99
99
  sync
100
- tzinfo (1.2.10)
101
- thread_safe (~> 0.1)
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.0, < 3.0)
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.0", "< 3.0")
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")
@@ -5,8 +5,6 @@ module Finitio
5
5
  NilClass => "string", # jsonapi does not support null
6
6
  String => "string",
7
7
  Integer => "integer",
8
- Fixnum => "integer",
9
- Bignum => "integer",
10
8
  Float => "number",
11
9
  Numeric => "number",
12
10
  TrueClass => "boolean",
@@ -11,8 +11,8 @@ Boolean = .TrueClass|.FalseClass
11
11
 
12
12
  # Numbers
13
13
  Numeric = .Numeric
14
- Fixnum = .Fixnum
15
- Bignum = .Bignum
14
+ Fixnum = .Integer
15
+ Bignum = .Integer
16
16
  Integer = .Integer
17
17
  Float = .Float
18
18
  Real = .Float
@@ -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: Fixnum, ...] to a ColorImpl instance.
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.Fixnum)
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 Fixnum.
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) = Fixnum
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 -> Fixnum throws TypeError
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(Fixnum)
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[Fixnum ^ Float]
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) = Fixnum
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 -> Fixnum throws TypeError
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(Fixnum)
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: Fixnum, theta: Float]
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: Fixnum, theta: Float] throws TypeError
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(Fixnum)
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) = Fixnum ^ Float = Numeric
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
  #
@@ -2,8 +2,8 @@ module Finitio
2
2
  module Version
3
3
 
4
4
  MAJOR = 0
5
- MINOR = 11
6
- TINY = 4
5
+ MINOR = 12
6
+ TINY = 0
7
7
 
8
8
  def self.to_s
9
9
  [ MAJOR, MINOR, TINY ].join('.')
@@ -3,7 +3,7 @@ describe Finitio, "ast" do
3
3
 
4
4
  subject{
5
5
  Finitio.ast <<-EOF
6
- Posint = .Fixnum( i | i>=0 )
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, "Fixnum"],
17
+ [:builtin_type, "Integer"],
18
18
  [ :constraint,
19
19
  "default",
20
20
  [:fn, [:parameters, "i"], [:source, "i>=0"] ]
@@ -4,7 +4,7 @@ describe Finitio, "parse" do
4
4
  context 'with a string' do
5
5
  subject{
6
6
  Finitio.parse <<-EOF
7
- Posint = .Fixnum( i | i>=0 )
7
+ Posint = .Integer( i | i>=0 )
8
8
  Point = { x: Posint, y: Posint }
9
9
  EOF
10
10
  }
@@ -4,7 +4,7 @@ describe Finitio, "system" do
4
4
  context 'with a string' do
5
5
  subject{
6
6
  Finitio.system <<-EOF
7
- Posint = .Fixnum( i | i>=0 )
7
+ Posint = .Integer( i | i>=0 )
8
8
  Point = { x: Posint, y: Posint }
9
9
  EOF
10
10
  }
@@ -26,13 +26,11 @@ module Finitio
26
26
  end
27
27
  end
28
28
 
29
- [Fixnum, Bignum, Integer].each do |rt|
30
- context "with #{rt}" do
31
- let(:ruby_type){ rt }
29
+ context "with Integer" do
30
+ let(:ruby_type){ Integer }
32
31
 
33
- it 'works' do
34
- expect(subject).to eql({ type: "integer" })
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(Fixnum) super type' do
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(Fixnum)
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(Fixnum){|i| i>=0 and i<=10 }
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.11.4
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-01-07 00:00:00.000000000 Z
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.0'
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.0'
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
- rubyforge_project:
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/regression/test_dress_on_recursive_type.rb
496
- - spec/regression/test_name_of_generic_types.rb
497
- - spec/regression/test_heading_extra_are_proxy_resolved.rb
498
- - spec/test_finitio.rb
499
- - spec/constraint/test_named.rb
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/type_factory/factory/test_tuple_type.rb
506
- - spec/type_factory/factory/test_set_type.rb
507
- - spec/type_factory/factory/test_builtin.rb
508
- - spec/type_factory/factory/test_sub_type.rb
509
- - spec/type_factory/factory/test_seq_type.rb
510
- - spec/type_factory/factory/test_struct_type.rb
511
- - spec/type_factory/dsl/test_subtype.rb
512
- - spec/type_factory/dsl/test_any.rb
513
- - spec/type_factory/dsl/test_attributes.rb
514
- - spec/type_factory/dsl/test_tuple.rb
515
- - spec/type_factory/dsl/test_union.rb
516
- - spec/type_factory/dsl/test_builtin.rb
517
- - spec/type_factory/dsl/test_multi_tuple.rb
518
- - spec/type_factory/dsl/test_relation.rb
519
- - spec/type_factory/dsl/test_set.rb
520
- - spec/type_factory/dsl/test_struct.rb
521
- - spec/type_factory/dsl/test_seq.rb
522
- - spec/type_factory/dsl/test_multi_relation.rb
523
- - spec/type_factory/dsl/test_adt.rb
524
- - spec/type_factory/dsl/test_attribute.rb
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/alias_type/test_default_name.rb
528
- - spec/type/struct_type/test_include.rb
529
- - spec/type/struct_type/test_dress.rb
530
- - spec/type/struct_type/test_equality.rb
531
- - spec/type/struct_type/test_name.rb
532
- - spec/type/struct_type/test_default_name.rb
533
- - spec/type/struct_type/test_initialize.rb
534
- - spec/type/relation_type/test_include.rb
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/relation_type/test_initialize.rb
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/seq_type/test_initialize.rb
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/set_type/test_initialize.rb
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/tuple_type/test_include.rb
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/tuple_type/test_initialize.rb
606
- - spec/support/test_proc_with_code.rb
607
- - spec/support/test_compare_attrs.rb
608
- - spec/heading/test_size.rb
609
- - spec/heading/test_hash_get.rb
610
- - spec/heading/test_hash.rb
611
- - spec/heading/test_each.rb
612
- - spec/heading/test_equality.rb
613
- - spec/heading/test_multi.rb
614
- - spec/heading/test_looks_similar.rb
615
- - spec/heading/test_allow_extra.rb
616
- - spec/heading/test_suppremum.rb
617
- - spec/heading/test_initialize.rb
618
- - spec/heading/test_to_name.rb
619
- - spec/json_schema/test_tuple_type.rb
620
- - spec/json_schema/test_alias_type.rb
621
- - spec/json_schema/test_set_type.rb
622
- - spec/json_schema/test_relation_type.rb
623
- - spec/json_schema/test_ad_type.rb
624
- - spec/json_schema/test_builtin_type.rb
625
- - spec/json_schema/test_multi_relation_type.rb
626
- - spec/json_schema/test_recursive_type.rb
627
- - spec/json_schema/test_sub_type.rb
628
- - spec/json_schema/test_any_type.rb
629
- - spec/json_schema/test_seq_type.rb
630
- - spec/json_schema/test_union_type.rb
631
- - spec/json_schema/test_multi_tuple_type.rb
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