qrb 0.1.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.
Files changed (159) hide show
  1. data/CHANGELOG.md +5 -0
  2. data/Gemfile +12 -0
  3. data/Gemfile.lock +58 -0
  4. data/LICENCE.md +22 -0
  5. data/Manifest.txt +11 -0
  6. data/README.md +118 -0
  7. data/Rakefile +11 -0
  8. data/lib/qrb/Q/default.q +29 -0
  9. data/lib/qrb/data_type.rb +23 -0
  10. data/lib/qrb/errors.rb +23 -0
  11. data/lib/qrb/support/attribute.rb +53 -0
  12. data/lib/qrb/support/collection_type.rb +25 -0
  13. data/lib/qrb/support/dress_helper.rb +68 -0
  14. data/lib/qrb/support/heading.rb +57 -0
  15. data/lib/qrb/support/type_factory.rb +178 -0
  16. data/lib/qrb/support.rb +5 -0
  17. data/lib/qrb/syntax/ad_type.rb +25 -0
  18. data/lib/qrb/syntax/attribute.rb +11 -0
  19. data/lib/qrb/syntax/builtin_type.rb +13 -0
  20. data/lib/qrb/syntax/constraint_def.rb +11 -0
  21. data/lib/qrb/syntax/constraints.rb +18 -0
  22. data/lib/qrb/syntax/contract.rb +25 -0
  23. data/lib/qrb/syntax/definitions.rb +14 -0
  24. data/lib/qrb/syntax/expression.rb +12 -0
  25. data/lib/qrb/syntax/heading.rb +15 -0
  26. data/lib/qrb/syntax/lambda_expr.rb +11 -0
  27. data/lib/qrb/syntax/named_constraint.rb +11 -0
  28. data/lib/qrb/syntax/q.citrus +195 -0
  29. data/lib/qrb/syntax/relation_type.rb +11 -0
  30. data/lib/qrb/syntax/seq_type.rb +12 -0
  31. data/lib/qrb/syntax/set_type.rb +12 -0
  32. data/lib/qrb/syntax/sub_type.rb +13 -0
  33. data/lib/qrb/syntax/support.rb +13 -0
  34. data/lib/qrb/syntax/system.rb +15 -0
  35. data/lib/qrb/syntax/tuple_type.rb +11 -0
  36. data/lib/qrb/syntax/type_def.rb +14 -0
  37. data/lib/qrb/syntax/type_ref.rb +13 -0
  38. data/lib/qrb/syntax/union_type.rb +12 -0
  39. data/lib/qrb/syntax/unnamed_constraint.rb +11 -0
  40. data/lib/qrb/syntax.rb +42 -0
  41. data/lib/qrb/system.rb +63 -0
  42. data/lib/qrb/type/ad_type.rb +111 -0
  43. data/lib/qrb/type/builtin_type.rb +56 -0
  44. data/lib/qrb/type/relation_type.rb +81 -0
  45. data/lib/qrb/type/seq_type.rb +51 -0
  46. data/lib/qrb/type/set_type.rb +52 -0
  47. data/lib/qrb/type/sub_type.rb +94 -0
  48. data/lib/qrb/type/tuple_type.rb +99 -0
  49. data/lib/qrb/type/union_type.rb +78 -0
  50. data/lib/qrb/type.rb +63 -0
  51. data/lib/qrb/version.rb +14 -0
  52. data/lib/qrb.rb +63 -0
  53. data/qrb.gemspec +186 -0
  54. data/spec/acceptance/Q/test_default.rb +96 -0
  55. data/spec/acceptance/Q/test_parsing.rb +15 -0
  56. data/spec/acceptance/ad_type/test_in_q.rb +82 -0
  57. data/spec/acceptance/ad_type/test_in_ruby.rb +60 -0
  58. data/spec/spec_helper.rb +68 -0
  59. data/spec/unit/attribute/test_equality.rb +26 -0
  60. data/spec/unit/attribute/test_fetch_on.rb +50 -0
  61. data/spec/unit/attribute/test_initialize.rb +13 -0
  62. data/spec/unit/attribute/test_to_name.rb +10 -0
  63. data/spec/unit/heading/test_each.rb +28 -0
  64. data/spec/unit/heading/test_equality.rb +28 -0
  65. data/spec/unit/heading/test_initialize.rb +36 -0
  66. data/spec/unit/heading/test_size.rb +30 -0
  67. data/spec/unit/heading/test_to_name.rb +32 -0
  68. data/spec/unit/qrb/test_parse.rb +18 -0
  69. data/spec/unit/syntax/nodes/test_ad_type.rb +94 -0
  70. data/spec/unit/syntax/nodes/test_attribute.rb +25 -0
  71. data/spec/unit/syntax/nodes/test_builtin_type.rb +32 -0
  72. data/spec/unit/syntax/nodes/test_comment.rb +26 -0
  73. data/spec/unit/syntax/nodes/test_constraint_def.rb +27 -0
  74. data/spec/unit/syntax/nodes/test_constraints.rb +51 -0
  75. data/spec/unit/syntax/nodes/test_contract.rb +62 -0
  76. data/spec/unit/syntax/nodes/test_expression.rb +43 -0
  77. data/spec/unit/syntax/nodes/test_heading.rb +41 -0
  78. data/spec/unit/syntax/nodes/test_named_constraint.rb +31 -0
  79. data/spec/unit/syntax/nodes/test_relation_type.rb +41 -0
  80. data/spec/unit/syntax/nodes/test_seq_type.rb +24 -0
  81. data/spec/unit/syntax/nodes/test_set_type.rb +24 -0
  82. data/spec/unit/syntax/nodes/test_spacing.rb +25 -0
  83. data/spec/unit/syntax/nodes/test_sub_type.rb +52 -0
  84. data/spec/unit/syntax/nodes/test_tuple_type.rb +41 -0
  85. data/spec/unit/syntax/nodes/test_union_type.rb +23 -0
  86. data/spec/unit/syntax/nodes/test_unnamed_constraint.rb +31 -0
  87. data/spec/unit/syntax/test_compile_type.rb +22 -0
  88. data/spec/unit/system/test_add_type.rb +47 -0
  89. data/spec/unit/system/test_dsl.rb +30 -0
  90. data/spec/unit/system/test_dup.rb +30 -0
  91. data/spec/unit/system/test_fetch.rb +42 -0
  92. data/spec/unit/system/test_get_type.rb +30 -0
  93. data/spec/unit/system/test_initialize.rb +10 -0
  94. data/spec/unit/test_qrb.rb +15 -0
  95. data/spec/unit/type/ad_type/test_default_name.rb +15 -0
  96. data/spec/unit/type/ad_type/test_dress.rb +55 -0
  97. data/spec/unit/type/ad_type/test_include.rb +22 -0
  98. data/spec/unit/type/ad_type/test_initialize.rb +40 -0
  99. data/spec/unit/type/ad_type/test_name.rb +20 -0
  100. data/spec/unit/type/builtin_type/test_default_name.rb +12 -0
  101. data/spec/unit/type/builtin_type/test_dress.rb +33 -0
  102. data/spec/unit/type/builtin_type/test_equality.rb +26 -0
  103. data/spec/unit/type/builtin_type/test_include.rb +22 -0
  104. data/spec/unit/type/builtin_type/test_initialize.rb +12 -0
  105. data/spec/unit/type/builtin_type/test_name.rb +24 -0
  106. data/spec/unit/type/relation_type/test_default_name.rb +16 -0
  107. data/spec/unit/type/relation_type/test_dress.rb +164 -0
  108. data/spec/unit/type/relation_type/test_equality.rb +32 -0
  109. data/spec/unit/type/relation_type/test_include.rb +46 -0
  110. data/spec/unit/type/relation_type/test_initialize.rb +26 -0
  111. data/spec/unit/type/relation_type/test_name.rb +24 -0
  112. data/spec/unit/type/seq_type/test_default_name.rb +14 -0
  113. data/spec/unit/type/seq_type/test_dress.rb +49 -0
  114. data/spec/unit/type/seq_type/test_equality.rb +26 -0
  115. data/spec/unit/type/seq_type/test_include.rb +43 -0
  116. data/spec/unit/type/seq_type/test_initialize.rb +28 -0
  117. data/spec/unit/type/seq_type/test_name.rb +24 -0
  118. data/spec/unit/type/set_type/test_default_name.rb +14 -0
  119. data/spec/unit/type/set_type/test_dress.rb +66 -0
  120. data/spec/unit/type/set_type/test_equality.rb +26 -0
  121. data/spec/unit/type/set_type/test_include.rb +43 -0
  122. data/spec/unit/type/set_type/test_initialize.rb +28 -0
  123. data/spec/unit/type/set_type/test_name.rb +24 -0
  124. data/spec/unit/type/sub_type/test_default_name.rb +14 -0
  125. data/spec/unit/type/sub_type/test_dress.rb +75 -0
  126. data/spec/unit/type/sub_type/test_equality.rb +34 -0
  127. data/spec/unit/type/sub_type/test_include.rb +34 -0
  128. data/spec/unit/type/sub_type/test_initialize.rb +16 -0
  129. data/spec/unit/type/sub_type/test_name.rb +24 -0
  130. data/spec/unit/type/tuple_type/test_default_name.rb +14 -0
  131. data/spec/unit/type/tuple_type/test_dress.rb +112 -0
  132. data/spec/unit/type/tuple_type/test_equality.rb +32 -0
  133. data/spec/unit/type/tuple_type/test_include.rb +38 -0
  134. data/spec/unit/type/tuple_type/test_initialize.rb +30 -0
  135. data/spec/unit/type/tuple_type/test_name.rb +24 -0
  136. data/spec/unit/type/union_type/test_default_name.rb +12 -0
  137. data/spec/unit/type/union_type/test_dress.rb +43 -0
  138. data/spec/unit/type/union_type/test_equality.rb +30 -0
  139. data/spec/unit/type/union_type/test_include.rb +28 -0
  140. data/spec/unit/type/union_type/test_initialize.rb +24 -0
  141. data/spec/unit/type/union_type/test_name.rb +20 -0
  142. data/spec/unit/type_factory/dsl/test_adt.rb +54 -0
  143. data/spec/unit/type_factory/dsl/test_attribute.rb +37 -0
  144. data/spec/unit/type_factory/dsl/test_attributes.rb +41 -0
  145. data/spec/unit/type_factory/dsl/test_builtin.rb +45 -0
  146. data/spec/unit/type_factory/dsl/test_relation.rb +85 -0
  147. data/spec/unit/type_factory/dsl/test_seq.rb +57 -0
  148. data/spec/unit/type_factory/dsl/test_set.rb +57 -0
  149. data/spec/unit/type_factory/dsl/test_subtype.rb +91 -0
  150. data/spec/unit/type_factory/dsl/test_tuple.rb +73 -0
  151. data/spec/unit/type_factory/dsl/test_union.rb +81 -0
  152. data/spec/unit/type_factory/factory/test_builtin.rb +24 -0
  153. data/spec/unit/type_factory/factory/test_seq_type.rb +44 -0
  154. data/spec/unit/type_factory/factory/test_set_type.rb +44 -0
  155. data/spec/unit/type_factory/factory/test_sub_type.rb +53 -0
  156. data/spec/unit/type_factory/factory/test_tuple_type.rb +43 -0
  157. data/tasks/gem.rake +73 -0
  158. data/tasks/test.rake +31 -0
  159. metadata +344 -0
@@ -0,0 +1,44 @@
1
+ require 'spec_helper'
2
+ module Qrb
3
+ describe TypeFactory, "Factory#set" do
4
+
5
+ let(:factory){ TypeFactory.new }
6
+
7
+ context 'for set of scalars' do
8
+ let(:expected){ SetType.new(intType) }
9
+
10
+ context 'when used with {Class}' do
11
+ subject{ factory.type([Integer].to_set) }
12
+
13
+ it{ should eq(expected) }
14
+ end
15
+
16
+ context 'when used with [Class] and a name' do
17
+ subject{ factory.type([Integer].to_set, "MySet") }
18
+
19
+ it{ should eq(expected) }
20
+
21
+ it 'should have the correct name' do
22
+ subject.name.should eq("MySet")
23
+ end
24
+ end
25
+ end
26
+
27
+ context 'for pseudo-relations' do
28
+ subject{
29
+ factory.type([{r: Integer}].to_set, "MySet")
30
+ }
31
+
32
+ let(:expected){
33
+ factory.relation(r: Integer)
34
+ }
35
+
36
+ it{ should eq(expected) }
37
+
38
+ it 'should have the correct name' do
39
+ subject.name.should eq("MySet")
40
+ end
41
+ end
42
+
43
+ end
44
+ end
@@ -0,0 +1,53 @@
1
+ require 'spec_helper'
2
+ module Qrb
3
+ describe TypeFactory, "Factory#sub_type" do
4
+
5
+ let(:factory){ TypeFactory.new }
6
+
7
+ shared_examples_for "The 1..10 type" do
8
+
9
+ it{ should be_a(SubType) }
10
+
11
+ it 'should have the BuiltinType(Fixnum) super type' do
12
+ subject.super_type.should be_a(BuiltinType)
13
+ subject.super_type.ruby_type.should be(Fixnum)
14
+ end
15
+
16
+ it 'should have the correct constraint' do
17
+ subject.dress(10).should eq(10)
18
+ ->{ subject.dress(-12) }.should raise_error(TypeError)
19
+ ->{ subject.dress(12) }.should raise_error(TypeError)
20
+ end
21
+ end
22
+
23
+ context 'when use with a ruby class and a block' do
24
+ subject{
25
+ factory.type(Fixnum){|i| i>=0 and i<=10 }
26
+ }
27
+
28
+ it_should_behave_like "The 1..10 type"
29
+ end
30
+
31
+ context 'when use with a a range' do
32
+ subject{
33
+ factory.type(1..10)
34
+ }
35
+
36
+ it_should_behave_like "The 1..10 type"
37
+ end
38
+
39
+ context 'when use with a regexp' do
40
+ subject{
41
+ factory.type(/[a-z]+/)
42
+ }
43
+
44
+ it { should be_a(SubType) }
45
+
46
+ it 'should have the correct constraint' do
47
+ subject.dress('abc').should eq('abc')
48
+ ->{ subject.dress('123') }.should raise_error(TypeError)
49
+ end
50
+ end
51
+
52
+ end
53
+ end
@@ -0,0 +1,43 @@
1
+ require 'spec_helper'
2
+ module Qrb
3
+ describe TypeFactory, "Factory#tuple" do
4
+
5
+ let(:factory){ TypeFactory.new }
6
+
7
+ let(:expected){ factory.tuple(r: Integer) }
8
+
9
+ context 'when use with {r: Integer}' do
10
+ subject{ factory.type(r: Integer) }
11
+
12
+ it{ should eq(expected) }
13
+ end
14
+
15
+ context 'when use with {r: Integer} and a name' do
16
+ subject{ factory.type({r: Integer}, "MyTuple") }
17
+
18
+ it{ should eq(expected) }
19
+
20
+ it 'should have the correct name' do
21
+ subject.name.should eq("MyTuple")
22
+ end
23
+ end
24
+
25
+ context 'when use with {r: 0..255} and a name' do
26
+ subject{ factory.type({r: 0..255}, "MyTuple") }
27
+
28
+ it{ should be_a(TupleType) }
29
+
30
+ it 'should have the correct constraint on r' do
31
+ subject.dress(r: 36)
32
+ ->{
33
+ subject.dress(r: 543)
34
+ }.should raise_error(TypeError)
35
+ end
36
+
37
+ it 'should have the correct name' do
38
+ subject.name.should eq("MyTuple")
39
+ end
40
+ end
41
+
42
+ end
43
+ end
data/tasks/gem.rake ADDED
@@ -0,0 +1,73 @@
1
+ # Installs rake tasks for gemming and packaging
2
+ #
3
+ # This file installs the 'rake package', 'rake gem' tasks and associates
4
+ # (clobber_package, repackage, ...). It is automatically generated by Noe
5
+ # from your .noespec file, and should therefore be configured there, under
6
+ # the variables/rake_tasks/gem entry, as illustrated below:
7
+ #
8
+ # variables:
9
+ # rake_tasks:
10
+ # gem:
11
+ # package_dir: pkg
12
+ # need_tar: false
13
+ # need_tar_gz: false
14
+ # need_tar_bz2: false
15
+ # need_zip: false
16
+ # ...
17
+ #
18
+ # If you have specific needs requiring manual intervention on this file,
19
+ # don't forget to set safe-override to false in your noe specification:
20
+ #
21
+ # template-info:
22
+ # manifest:
23
+ # tasks/gem.rake:
24
+ # safe-override: false
25
+ #
26
+ begin
27
+ require 'rubygems/package_task'
28
+
29
+ # Dynamically load the gem spec
30
+ gemspec_file = File.expand_path('../../qrb.gemspec', __FILE__)
31
+ gemspec = Kernel.eval(File.read(gemspec_file))
32
+
33
+ Gem::PackageTask.new(gemspec) do |t|
34
+
35
+ # Name of the package
36
+ t.name = gemspec.name
37
+
38
+ # Version of the package
39
+ t.version = gemspec.version
40
+
41
+ # Directory used to store the package files
42
+ t.package_dir = "pkg"
43
+
44
+ # True if a gzipped tar file (tgz) should be produced
45
+ t.need_tar = false
46
+
47
+ # True if a gzipped tar file (tar.gz) should be produced
48
+ t.need_tar_gz = false
49
+
50
+ # True if a bzip2'd tar file (tar.bz2) should be produced
51
+ t.need_tar_bz2 = false
52
+
53
+ # True if a zip file should be produced (default is false)
54
+ t.need_zip = false
55
+
56
+ # List of files to be included in the package.
57
+ t.package_files = gemspec.files
58
+
59
+ # Tar command for gzipped or bzip2ed archives.
60
+ t.tar_command = "tar"
61
+
62
+ # Zip command for zipped archives.
63
+ t.zip_command = "zip"
64
+
65
+ end
66
+ rescue LoadError
67
+ task :gem do
68
+ abort 'rubygems/package_task is not available. You should verify your rubygems installation'
69
+ end
70
+ task :package do
71
+ abort 'rubygems/package_task is not available. You should verify your rubygems installation'
72
+ end
73
+ end
data/tasks/test.rake ADDED
@@ -0,0 +1,31 @@
1
+ namespace :test do
2
+
3
+ begin
4
+ require "rspec/core/rake_task"
5
+ desc "Run RSpec code examples"
6
+ RSpec::Core::RakeTask.new(:unit) do |t|
7
+ t.pattern = "spec/**/test_*.rb"
8
+ t.rspec_opts = ["--color", "--backtrace"]
9
+ end
10
+ rescue LoadError => ex
11
+ task :unit do
12
+ abort 'rspec is not available.'
13
+ end
14
+ end
15
+
16
+ begin
17
+ require 'cucumber'
18
+ require 'cucumber/rake/task'
19
+
20
+ Cucumber::Rake::Task.new(:cucumber) do |t|
21
+ t.cucumber_opts = "features --format pretty"
22
+ end
23
+ rescue LoadError => ex
24
+ task :unit do
25
+ abort 'cucumber is not available.'
26
+ end
27
+ end
28
+
29
+ task :all => [ :unit, :cucumber ]
30
+ end
31
+ task :test => :'test:all'
metadata ADDED
@@ -0,0 +1,344 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: qrb
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Bernard Lambeau
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2014-03-03 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: rake
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ~>
20
+ - !ruby/object:Gem::Version
21
+ version: '10.0'
22
+ type: :development
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ~>
28
+ - !ruby/object:Gem::Version
29
+ version: '10.0'
30
+ - !ruby/object:Gem::Dependency
31
+ name: rspec
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ~>
36
+ - !ruby/object:Gem::Version
37
+ version: '2.14'
38
+ type: :development
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ~>
44
+ - !ruby/object:Gem::Version
45
+ version: '2.14'
46
+ description: Implements the Q information language in Ruby.
47
+ email:
48
+ - blambeau@gmail.com
49
+ executables: []
50
+ extensions: []
51
+ extra_rdoc_files:
52
+ - README.md
53
+ - CHANGELOG.md
54
+ - LICENCE.md
55
+ files:
56
+ - CHANGELOG.md
57
+ - Gemfile
58
+ - Gemfile.lock
59
+ - lib/qrb/data_type.rb
60
+ - lib/qrb/errors.rb
61
+ - lib/qrb/Q/default.q
62
+ - lib/qrb/support/attribute.rb
63
+ - lib/qrb/support/collection_type.rb
64
+ - lib/qrb/support/dress_helper.rb
65
+ - lib/qrb/support/heading.rb
66
+ - lib/qrb/support/type_factory.rb
67
+ - lib/qrb/support.rb
68
+ - lib/qrb/syntax/ad_type.rb
69
+ - lib/qrb/syntax/attribute.rb
70
+ - lib/qrb/syntax/builtin_type.rb
71
+ - lib/qrb/syntax/constraint_def.rb
72
+ - lib/qrb/syntax/constraints.rb
73
+ - lib/qrb/syntax/contract.rb
74
+ - lib/qrb/syntax/definitions.rb
75
+ - lib/qrb/syntax/expression.rb
76
+ - lib/qrb/syntax/heading.rb
77
+ - lib/qrb/syntax/lambda_expr.rb
78
+ - lib/qrb/syntax/named_constraint.rb
79
+ - lib/qrb/syntax/q.citrus
80
+ - lib/qrb/syntax/relation_type.rb
81
+ - lib/qrb/syntax/seq_type.rb
82
+ - lib/qrb/syntax/set_type.rb
83
+ - lib/qrb/syntax/sub_type.rb
84
+ - lib/qrb/syntax/support.rb
85
+ - lib/qrb/syntax/system.rb
86
+ - lib/qrb/syntax/tuple_type.rb
87
+ - lib/qrb/syntax/type_def.rb
88
+ - lib/qrb/syntax/type_ref.rb
89
+ - lib/qrb/syntax/union_type.rb
90
+ - lib/qrb/syntax/unnamed_constraint.rb
91
+ - lib/qrb/syntax.rb
92
+ - lib/qrb/system.rb
93
+ - lib/qrb/type/ad_type.rb
94
+ - lib/qrb/type/builtin_type.rb
95
+ - lib/qrb/type/relation_type.rb
96
+ - lib/qrb/type/seq_type.rb
97
+ - lib/qrb/type/set_type.rb
98
+ - lib/qrb/type/sub_type.rb
99
+ - lib/qrb/type/tuple_type.rb
100
+ - lib/qrb/type/union_type.rb
101
+ - lib/qrb/type.rb
102
+ - lib/qrb/version.rb
103
+ - lib/qrb.rb
104
+ - LICENCE.md
105
+ - Manifest.txt
106
+ - qrb.gemspec
107
+ - Rakefile
108
+ - README.md
109
+ - spec/acceptance/ad_type/test_in_q.rb
110
+ - spec/acceptance/ad_type/test_in_ruby.rb
111
+ - spec/acceptance/Q/test_default.rb
112
+ - spec/acceptance/Q/test_parsing.rb
113
+ - spec/spec_helper.rb
114
+ - spec/unit/attribute/test_equality.rb
115
+ - spec/unit/attribute/test_fetch_on.rb
116
+ - spec/unit/attribute/test_initialize.rb
117
+ - spec/unit/attribute/test_to_name.rb
118
+ - spec/unit/heading/test_each.rb
119
+ - spec/unit/heading/test_equality.rb
120
+ - spec/unit/heading/test_initialize.rb
121
+ - spec/unit/heading/test_size.rb
122
+ - spec/unit/heading/test_to_name.rb
123
+ - spec/unit/qrb/test_parse.rb
124
+ - spec/unit/syntax/nodes/test_ad_type.rb
125
+ - spec/unit/syntax/nodes/test_attribute.rb
126
+ - spec/unit/syntax/nodes/test_builtin_type.rb
127
+ - spec/unit/syntax/nodes/test_comment.rb
128
+ - spec/unit/syntax/nodes/test_constraint_def.rb
129
+ - spec/unit/syntax/nodes/test_constraints.rb
130
+ - spec/unit/syntax/nodes/test_contract.rb
131
+ - spec/unit/syntax/nodes/test_expression.rb
132
+ - spec/unit/syntax/nodes/test_heading.rb
133
+ - spec/unit/syntax/nodes/test_named_constraint.rb
134
+ - spec/unit/syntax/nodes/test_relation_type.rb
135
+ - spec/unit/syntax/nodes/test_seq_type.rb
136
+ - spec/unit/syntax/nodes/test_set_type.rb
137
+ - spec/unit/syntax/nodes/test_spacing.rb
138
+ - spec/unit/syntax/nodes/test_sub_type.rb
139
+ - spec/unit/syntax/nodes/test_tuple_type.rb
140
+ - spec/unit/syntax/nodes/test_union_type.rb
141
+ - spec/unit/syntax/nodes/test_unnamed_constraint.rb
142
+ - spec/unit/syntax/test_compile_type.rb
143
+ - spec/unit/system/test_add_type.rb
144
+ - spec/unit/system/test_dsl.rb
145
+ - spec/unit/system/test_dup.rb
146
+ - spec/unit/system/test_fetch.rb
147
+ - spec/unit/system/test_get_type.rb
148
+ - spec/unit/system/test_initialize.rb
149
+ - spec/unit/test_qrb.rb
150
+ - spec/unit/type/ad_type/test_default_name.rb
151
+ - spec/unit/type/ad_type/test_dress.rb
152
+ - spec/unit/type/ad_type/test_include.rb
153
+ - spec/unit/type/ad_type/test_initialize.rb
154
+ - spec/unit/type/ad_type/test_name.rb
155
+ - spec/unit/type/builtin_type/test_default_name.rb
156
+ - spec/unit/type/builtin_type/test_dress.rb
157
+ - spec/unit/type/builtin_type/test_equality.rb
158
+ - spec/unit/type/builtin_type/test_include.rb
159
+ - spec/unit/type/builtin_type/test_initialize.rb
160
+ - spec/unit/type/builtin_type/test_name.rb
161
+ - spec/unit/type/relation_type/test_default_name.rb
162
+ - spec/unit/type/relation_type/test_dress.rb
163
+ - spec/unit/type/relation_type/test_equality.rb
164
+ - spec/unit/type/relation_type/test_include.rb
165
+ - spec/unit/type/relation_type/test_initialize.rb
166
+ - spec/unit/type/relation_type/test_name.rb
167
+ - spec/unit/type/seq_type/test_default_name.rb
168
+ - spec/unit/type/seq_type/test_dress.rb
169
+ - spec/unit/type/seq_type/test_equality.rb
170
+ - spec/unit/type/seq_type/test_include.rb
171
+ - spec/unit/type/seq_type/test_initialize.rb
172
+ - spec/unit/type/seq_type/test_name.rb
173
+ - spec/unit/type/set_type/test_default_name.rb
174
+ - spec/unit/type/set_type/test_dress.rb
175
+ - spec/unit/type/set_type/test_equality.rb
176
+ - spec/unit/type/set_type/test_include.rb
177
+ - spec/unit/type/set_type/test_initialize.rb
178
+ - spec/unit/type/set_type/test_name.rb
179
+ - spec/unit/type/sub_type/test_default_name.rb
180
+ - spec/unit/type/sub_type/test_dress.rb
181
+ - spec/unit/type/sub_type/test_equality.rb
182
+ - spec/unit/type/sub_type/test_include.rb
183
+ - spec/unit/type/sub_type/test_initialize.rb
184
+ - spec/unit/type/sub_type/test_name.rb
185
+ - spec/unit/type/tuple_type/test_default_name.rb
186
+ - spec/unit/type/tuple_type/test_dress.rb
187
+ - spec/unit/type/tuple_type/test_equality.rb
188
+ - spec/unit/type/tuple_type/test_include.rb
189
+ - spec/unit/type/tuple_type/test_initialize.rb
190
+ - spec/unit/type/tuple_type/test_name.rb
191
+ - spec/unit/type/union_type/test_default_name.rb
192
+ - spec/unit/type/union_type/test_dress.rb
193
+ - spec/unit/type/union_type/test_equality.rb
194
+ - spec/unit/type/union_type/test_include.rb
195
+ - spec/unit/type/union_type/test_initialize.rb
196
+ - spec/unit/type/union_type/test_name.rb
197
+ - spec/unit/type_factory/dsl/test_adt.rb
198
+ - spec/unit/type_factory/dsl/test_attribute.rb
199
+ - spec/unit/type_factory/dsl/test_attributes.rb
200
+ - spec/unit/type_factory/dsl/test_builtin.rb
201
+ - spec/unit/type_factory/dsl/test_relation.rb
202
+ - spec/unit/type_factory/dsl/test_seq.rb
203
+ - spec/unit/type_factory/dsl/test_set.rb
204
+ - spec/unit/type_factory/dsl/test_subtype.rb
205
+ - spec/unit/type_factory/dsl/test_tuple.rb
206
+ - spec/unit/type_factory/dsl/test_union.rb
207
+ - spec/unit/type_factory/factory/test_builtin.rb
208
+ - spec/unit/type_factory/factory/test_seq_type.rb
209
+ - spec/unit/type_factory/factory/test_set_type.rb
210
+ - spec/unit/type_factory/factory/test_sub_type.rb
211
+ - spec/unit/type_factory/factory/test_tuple_type.rb
212
+ - tasks/gem.rake
213
+ - tasks/test.rake
214
+ homepage: https://github.com/blambeau/qrb
215
+ licenses: []
216
+ post_install_message:
217
+ rdoc_options: []
218
+ require_paths:
219
+ - lib
220
+ required_ruby_version: !ruby/object:Gem::Requirement
221
+ none: false
222
+ requirements:
223
+ - - ! '>='
224
+ - !ruby/object:Gem::Version
225
+ version: '0'
226
+ segments:
227
+ - 0
228
+ hash: 1288789255252686776
229
+ required_rubygems_version: !ruby/object:Gem::Requirement
230
+ none: false
231
+ requirements:
232
+ - - ! '>='
233
+ - !ruby/object:Gem::Version
234
+ version: '0'
235
+ requirements: []
236
+ rubyforge_project:
237
+ rubygems_version: 1.8.25
238
+ signing_key:
239
+ specification_version: 3
240
+ summary: Q - in Ruby
241
+ test_files:
242
+ - spec/acceptance/ad_type/test_in_q.rb
243
+ - spec/acceptance/ad_type/test_in_ruby.rb
244
+ - spec/acceptance/Q/test_default.rb
245
+ - spec/acceptance/Q/test_parsing.rb
246
+ - spec/spec_helper.rb
247
+ - spec/unit/attribute/test_equality.rb
248
+ - spec/unit/attribute/test_fetch_on.rb
249
+ - spec/unit/attribute/test_initialize.rb
250
+ - spec/unit/attribute/test_to_name.rb
251
+ - spec/unit/heading/test_each.rb
252
+ - spec/unit/heading/test_equality.rb
253
+ - spec/unit/heading/test_initialize.rb
254
+ - spec/unit/heading/test_size.rb
255
+ - spec/unit/heading/test_to_name.rb
256
+ - spec/unit/qrb/test_parse.rb
257
+ - spec/unit/syntax/nodes/test_ad_type.rb
258
+ - spec/unit/syntax/nodes/test_attribute.rb
259
+ - spec/unit/syntax/nodes/test_builtin_type.rb
260
+ - spec/unit/syntax/nodes/test_comment.rb
261
+ - spec/unit/syntax/nodes/test_constraint_def.rb
262
+ - spec/unit/syntax/nodes/test_constraints.rb
263
+ - spec/unit/syntax/nodes/test_contract.rb
264
+ - spec/unit/syntax/nodes/test_expression.rb
265
+ - spec/unit/syntax/nodes/test_heading.rb
266
+ - spec/unit/syntax/nodes/test_named_constraint.rb
267
+ - spec/unit/syntax/nodes/test_relation_type.rb
268
+ - spec/unit/syntax/nodes/test_seq_type.rb
269
+ - spec/unit/syntax/nodes/test_set_type.rb
270
+ - spec/unit/syntax/nodes/test_spacing.rb
271
+ - spec/unit/syntax/nodes/test_sub_type.rb
272
+ - spec/unit/syntax/nodes/test_tuple_type.rb
273
+ - spec/unit/syntax/nodes/test_union_type.rb
274
+ - spec/unit/syntax/nodes/test_unnamed_constraint.rb
275
+ - spec/unit/syntax/test_compile_type.rb
276
+ - spec/unit/system/test_add_type.rb
277
+ - spec/unit/system/test_dsl.rb
278
+ - spec/unit/system/test_dup.rb
279
+ - spec/unit/system/test_fetch.rb
280
+ - spec/unit/system/test_get_type.rb
281
+ - spec/unit/system/test_initialize.rb
282
+ - spec/unit/test_qrb.rb
283
+ - spec/unit/type/ad_type/test_default_name.rb
284
+ - spec/unit/type/ad_type/test_dress.rb
285
+ - spec/unit/type/ad_type/test_include.rb
286
+ - spec/unit/type/ad_type/test_initialize.rb
287
+ - spec/unit/type/ad_type/test_name.rb
288
+ - spec/unit/type/builtin_type/test_default_name.rb
289
+ - spec/unit/type/builtin_type/test_dress.rb
290
+ - spec/unit/type/builtin_type/test_equality.rb
291
+ - spec/unit/type/builtin_type/test_include.rb
292
+ - spec/unit/type/builtin_type/test_initialize.rb
293
+ - spec/unit/type/builtin_type/test_name.rb
294
+ - spec/unit/type/relation_type/test_default_name.rb
295
+ - spec/unit/type/relation_type/test_dress.rb
296
+ - spec/unit/type/relation_type/test_equality.rb
297
+ - spec/unit/type/relation_type/test_include.rb
298
+ - spec/unit/type/relation_type/test_initialize.rb
299
+ - spec/unit/type/relation_type/test_name.rb
300
+ - spec/unit/type/seq_type/test_default_name.rb
301
+ - spec/unit/type/seq_type/test_dress.rb
302
+ - spec/unit/type/seq_type/test_equality.rb
303
+ - spec/unit/type/seq_type/test_include.rb
304
+ - spec/unit/type/seq_type/test_initialize.rb
305
+ - spec/unit/type/seq_type/test_name.rb
306
+ - spec/unit/type/set_type/test_default_name.rb
307
+ - spec/unit/type/set_type/test_dress.rb
308
+ - spec/unit/type/set_type/test_equality.rb
309
+ - spec/unit/type/set_type/test_include.rb
310
+ - spec/unit/type/set_type/test_initialize.rb
311
+ - spec/unit/type/set_type/test_name.rb
312
+ - spec/unit/type/sub_type/test_default_name.rb
313
+ - spec/unit/type/sub_type/test_dress.rb
314
+ - spec/unit/type/sub_type/test_equality.rb
315
+ - spec/unit/type/sub_type/test_include.rb
316
+ - spec/unit/type/sub_type/test_initialize.rb
317
+ - spec/unit/type/sub_type/test_name.rb
318
+ - spec/unit/type/tuple_type/test_default_name.rb
319
+ - spec/unit/type/tuple_type/test_dress.rb
320
+ - spec/unit/type/tuple_type/test_equality.rb
321
+ - spec/unit/type/tuple_type/test_include.rb
322
+ - spec/unit/type/tuple_type/test_initialize.rb
323
+ - spec/unit/type/tuple_type/test_name.rb
324
+ - spec/unit/type/union_type/test_default_name.rb
325
+ - spec/unit/type/union_type/test_dress.rb
326
+ - spec/unit/type/union_type/test_equality.rb
327
+ - spec/unit/type/union_type/test_include.rb
328
+ - spec/unit/type/union_type/test_initialize.rb
329
+ - spec/unit/type/union_type/test_name.rb
330
+ - spec/unit/type_factory/dsl/test_adt.rb
331
+ - spec/unit/type_factory/dsl/test_attribute.rb
332
+ - spec/unit/type_factory/dsl/test_attributes.rb
333
+ - spec/unit/type_factory/dsl/test_builtin.rb
334
+ - spec/unit/type_factory/dsl/test_relation.rb
335
+ - spec/unit/type_factory/dsl/test_seq.rb
336
+ - spec/unit/type_factory/dsl/test_set.rb
337
+ - spec/unit/type_factory/dsl/test_subtype.rb
338
+ - spec/unit/type_factory/dsl/test_tuple.rb
339
+ - spec/unit/type_factory/dsl/test_union.rb
340
+ - spec/unit/type_factory/factory/test_builtin.rb
341
+ - spec/unit/type_factory/factory/test_seq_type.rb
342
+ - spec/unit/type_factory/factory/test_set_type.rb
343
+ - spec/unit/type_factory/factory/test_sub_type.rb
344
+ - spec/unit/type_factory/factory/test_tuple_type.rb