gecoder 0.8.3 → 0.9.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (142) hide show
  1. data/CHANGES +15 -0
  2. data/README +6 -2
  3. data/example/equation_system.rb +15 -0
  4. data/example/magic_sequence.rb +7 -7
  5. data/example/money.rb +36 -0
  6. data/example/queens.rb +7 -8
  7. data/example/send_most_money.rb +1 -1
  8. data/example/square_tiling.rb +2 -2
  9. data/example/sudoku-set.rb +11 -12
  10. data/example/sudoku.rb +40 -45
  11. data/ext/extconf.rb +0 -0
  12. data/lib/gecoder/bindings.rb +42 -0
  13. data/lib/gecoder/bindings/bindings.rb +16 -0
  14. data/lib/gecoder/interface.rb +2 -1
  15. data/lib/gecoder/interface/branch.rb +16 -9
  16. data/lib/gecoder/interface/constraints.rb +410 -451
  17. data/lib/gecoder/interface/constraints/bool/boolean.rb +205 -213
  18. data/lib/gecoder/interface/constraints/bool/channel.rb +4 -5
  19. data/lib/gecoder/interface/constraints/bool/linear.rb +192 -21
  20. data/lib/gecoder/interface/constraints/bool_enum/channel.rb +43 -39
  21. data/lib/gecoder/interface/constraints/bool_enum/extensional.rb +43 -49
  22. data/lib/gecoder/interface/constraints/bool_enum/relation.rb +38 -71
  23. data/lib/gecoder/interface/constraints/bool_enum_constraints.rb +73 -22
  24. data/lib/gecoder/interface/constraints/bool_var_constraints.rb +140 -61
  25. data/lib/gecoder/interface/constraints/extensional_regexp.rb +4 -4
  26. data/lib/gecoder/interface/constraints/fixnum_enum/element.rb +63 -0
  27. data/lib/gecoder/interface/constraints/fixnum_enum/operation.rb +65 -0
  28. data/lib/gecoder/interface/constraints/fixnum_enum_constraints.rb +42 -0
  29. data/lib/gecoder/interface/constraints/int/arithmetic.rb +131 -130
  30. data/lib/gecoder/interface/constraints/int/channel.rb +21 -31
  31. data/lib/gecoder/interface/constraints/int/domain.rb +45 -42
  32. data/lib/gecoder/interface/constraints/int/linear.rb +85 -239
  33. data/lib/gecoder/interface/constraints/int/relation.rb +141 -0
  34. data/lib/gecoder/interface/constraints/int_enum/arithmetic.rb +55 -64
  35. data/lib/gecoder/interface/constraints/int_enum/channel.rb +35 -37
  36. data/lib/gecoder/interface/constraints/int_enum/count.rb +53 -78
  37. data/lib/gecoder/interface/constraints/int_enum/distinct.rb +36 -46
  38. data/lib/gecoder/interface/constraints/int_enum/element.rb +39 -57
  39. data/lib/gecoder/interface/constraints/int_enum/equality.rb +15 -19
  40. data/lib/gecoder/interface/constraints/int_enum/extensional.rb +65 -72
  41. data/lib/gecoder/interface/constraints/int_enum/sort.rb +42 -45
  42. data/lib/gecoder/interface/constraints/int_enum_constraints.rb +79 -22
  43. data/lib/gecoder/interface/constraints/int_var_constraints.rb +215 -44
  44. data/lib/gecoder/interface/constraints/reifiable_constraints.rb +14 -14
  45. data/lib/gecoder/interface/constraints/selected_set/select.rb +120 -0
  46. data/lib/gecoder/interface/constraints/selected_set_constraints.rb +75 -0
  47. data/lib/gecoder/interface/constraints/set/cardinality.rb +43 -53
  48. data/lib/gecoder/interface/constraints/set/channel.rb +26 -29
  49. data/lib/gecoder/interface/constraints/set/connection.rb +89 -152
  50. data/lib/gecoder/interface/constraints/set/domain.rb +112 -65
  51. data/lib/gecoder/interface/constraints/set/include.rb +36 -0
  52. data/lib/gecoder/interface/constraints/set/operation.rb +96 -110
  53. data/lib/gecoder/interface/constraints/set/relation.rb +114 -137
  54. data/lib/gecoder/interface/constraints/set_elements/relation.rb +116 -0
  55. data/lib/gecoder/interface/constraints/set_elements_constraints.rb +97 -0
  56. data/lib/gecoder/interface/constraints/set_enum/channel.rb +23 -27
  57. data/lib/gecoder/interface/constraints/set_enum/distinct.rb +18 -19
  58. data/lib/gecoder/interface/constraints/set_enum/operation.rb +62 -53
  59. data/lib/gecoder/interface/constraints/set_enum/select.rb +79 -0
  60. data/lib/gecoder/interface/constraints/set_enum_constraints.rb +73 -23
  61. data/lib/gecoder/interface/constraints/set_var_constraints.rb +222 -57
  62. data/lib/gecoder/interface/enum_matrix.rb +4 -4
  63. data/lib/gecoder/interface/enum_wrapper.rb +71 -22
  64. data/lib/gecoder/interface/model.rb +167 -12
  65. data/lib/gecoder/interface/model_sugar.rb +84 -0
  66. data/lib/gecoder/interface/search.rb +30 -18
  67. data/lib/gecoder/interface/variables.rb +103 -33
  68. data/lib/gecoder/version.rb +2 -2
  69. data/specs/bool_var.rb +19 -12
  70. data/specs/constraints/{boolean.rb → bool/boolean.rb} +103 -28
  71. data/specs/constraints/bool/boolean_properties.rb +51 -0
  72. data/specs/constraints/bool/linear.rb +213 -0
  73. data/specs/constraints/bool_enum/bool_enum_relation.rb +117 -0
  74. data/specs/constraints/bool_enum/channel.rb +102 -0
  75. data/specs/constraints/{extensional.rb → bool_enum/extensional.rb} +32 -101
  76. data/specs/constraints/constraint_helper.rb +149 -179
  77. data/specs/constraints/constraint_receivers.rb +103 -0
  78. data/specs/constraints/constraints.rb +6 -63
  79. data/specs/constraints/fixnum_enum/element.rb +58 -0
  80. data/specs/constraints/fixnum_enum/operation.rb +67 -0
  81. data/specs/constraints/int/arithmetic.rb +149 -0
  82. data/specs/constraints/int/channel.rb +101 -0
  83. data/specs/constraints/int/domain.rb +106 -0
  84. data/specs/constraints/int/linear.rb +183 -0
  85. data/specs/constraints/int/linear_properties.rb +97 -0
  86. data/specs/constraints/int/relation.rb +84 -0
  87. data/specs/constraints/int_enum/arithmetic.rb +72 -0
  88. data/specs/constraints/int_enum/channel.rb +57 -0
  89. data/specs/constraints/int_enum/count.rb +72 -0
  90. data/specs/constraints/int_enum/distinct.rb +80 -0
  91. data/specs/constraints/int_enum/element.rb +61 -0
  92. data/specs/constraints/int_enum/equality.rb +29 -0
  93. data/specs/constraints/int_enum/extensional.rb +224 -0
  94. data/specs/constraints/int_enum/sort.rb +167 -0
  95. data/specs/constraints/operands.rb +264 -0
  96. data/specs/constraints/property_helper.rb +443 -0
  97. data/specs/constraints/reification_sugar.rb +4 -5
  98. data/specs/constraints/selected_set/select.rb +56 -0
  99. data/specs/constraints/selected_set/select_properties.rb +157 -0
  100. data/specs/constraints/set/cardinality.rb +58 -0
  101. data/specs/constraints/set/cardinality_properties.rb +46 -0
  102. data/specs/constraints/set/channel.rb +77 -0
  103. data/specs/constraints/set/connection.rb +176 -0
  104. data/specs/constraints/set/domain.rb +197 -0
  105. data/specs/constraints/set/include.rb +36 -0
  106. data/specs/constraints/set/operation.rb +132 -0
  107. data/specs/constraints/set/relation.rb +117 -0
  108. data/specs/constraints/set_elements/relation.rb +84 -0
  109. data/specs/constraints/set_enum/channel.rb +80 -0
  110. data/specs/constraints/set_enum/distinct.rb +59 -0
  111. data/specs/constraints/set_enum/operation.rb +111 -0
  112. data/specs/constraints/set_enum/select.rb +73 -0
  113. data/specs/enum_wrapper.rb +53 -3
  114. data/specs/int_var.rb +44 -25
  115. data/specs/model.rb +58 -1
  116. data/specs/model_sugar.rb +30 -0
  117. data/specs/search.rb +24 -5
  118. data/specs/selected_set.rb +39 -0
  119. data/specs/set_elements.rb +34 -0
  120. data/specs/set_var.rb +22 -8
  121. data/specs/spec_helper.rb +206 -6
  122. data/tasks/distribution.rake +22 -7
  123. data/tasks/svn.rake +3 -1
  124. metadata +218 -134
  125. data/lib/gecoder/interface/constraints/set_enum/selection.rb +0 -217
  126. data/specs/constraints/arithmetic.rb +0 -351
  127. data/specs/constraints/bool_enum_relation.rb +0 -160
  128. data/specs/constraints/cardinality.rb +0 -157
  129. data/specs/constraints/channel.rb +0 -454
  130. data/specs/constraints/connection.rb +0 -369
  131. data/specs/constraints/count.rb +0 -146
  132. data/specs/constraints/distinct.rb +0 -164
  133. data/specs/constraints/element.rb +0 -108
  134. data/specs/constraints/equality.rb +0 -31
  135. data/specs/constraints/int_domain.rb +0 -70
  136. data/specs/constraints/int_relation.rb +0 -82
  137. data/specs/constraints/linear.rb +0 -340
  138. data/specs/constraints/selection.rb +0 -292
  139. data/specs/constraints/set_domain.rb +0 -185
  140. data/specs/constraints/set_operation.rb +0 -285
  141. data/specs/constraints/set_relation.rb +0 -197
  142. data/specs/constraints/sort.rb +0 -179
@@ -12,8 +12,10 @@ EXT_DIR = 'ext'
12
12
  desc 'Generate RDoc'
13
13
  rd = Rake::RDocTask.new do |rdoc|
14
14
  rdoc.rdoc_dir = 'doc/output/rdoc'
15
- rdoc.options << '--title' << 'Gecode/R' << '--line-numbers' <<
16
- '--inline-source' << '--accessor' << 'delegate' << '--main' << 'README'
15
+ rdoc.title = 'Gecode/R'
16
+ rdoc.template = 'doc/rdoc/jamis.rb'
17
+ rdoc.options << '--line-numbers' << '--inline-source' <<
18
+ '--accessor' << 'delegate' << '--main' << 'README'
17
19
  rdoc.rdoc_files.include('README', 'CHANGES', 'LGPL-LICENSE', 'lib/**/*.rb')
18
20
  end
19
21
 
@@ -32,7 +34,7 @@ task :prepare_rdoc_dev do
32
34
  # Copy the rdoc and remove all #:nodoc: .
33
35
  Dir['lib/**/*.rb'].each do |source_name|
34
36
  destination_name = source_name.sub('lib', TMP_DIR)
35
- File.makedirs File.dirname(destination_name)
37
+ FileUtils.makedirs File.dirname(destination_name)
36
38
  destination = File.open(destination_name, 'w')
37
39
  File.open(source_name) do |source|
38
40
  source.each{ |line| destination << line.gsub('#:nodoc:', '' ) }
@@ -72,11 +74,24 @@ spec = Gem::Specification.new do |s|
72
74
  s.extra_rdoc_files = rd.rdoc_files
73
75
  s.test_files = FileList['specs/**/*.rb']
74
76
 
75
- s.autorequire = 'gecoder'
76
- s.author = ["Gecode/R Development Team"]
77
+ s.authors = ["Gecode/R Development Team"]
77
78
  s.email = "gecoder-users@rubyforge.org"
78
79
  s.homepage = "http://gecoder.rubyforge.org"
79
80
  s.rubyforge_project = "gecoder"
81
+
82
+ =begin
83
+ # Development dependencies.
84
+ # Not listed: rubygems >= 1.2
85
+ [['rake'],
86
+ ['webgen', '= 0.4.7'],
87
+ ['coderay'],
88
+ ['rspec', '>= 1.0'],
89
+ ['rcov'],
90
+ ['meta_project'],
91
+ ['rubyforge']].each do |dependency|
92
+ s.add_development_dependency(*dependency)
93
+ end
94
+ =end
80
95
  end
81
96
 
82
97
  # Create a clone of the gem spec with the precompiled binaries for Windows.
@@ -88,7 +103,7 @@ spec_windows_binary_with_gecode.requirements = []
88
103
  spec_windows_binary_with_gecode.files = spec.files.dup -
89
104
  FileList['ext/**/*'].to_a +
90
105
  FileList['vendor/gecode/win32/lib/*'].to_a << 'lib/gecode.dll'
91
- spec_windows_binary_with_gecode.platform = Gem::Platform::WIN32
106
+ spec_windows_binary_with_gecode.platform = 'mswin32' #Gem::Platform::WIN32
92
107
 
93
108
  # Create a clone of the gem spec that includes Gecode.
94
109
  spec_with_gecode = spec.dup
@@ -162,7 +177,7 @@ gecode_release_files = [
162
177
  "pkg/#{PKG_FILE_NAME_WITH_GECODE}.gem",
163
178
  #"pkg/#{PKG_FILE_NAME_WITH_GECODE}.tgz",
164
179
  #"pkg/#{PKG_FILE_NAME_WITH_GECODE}.zip",
165
- "pkg/#{PKG_FILE_NAME_WITH_GECODE}-mswin32.gem"
180
+ "pkg/#{PKG_FILE_NAME_WITH_GECODE}-x86-mswin32.gem"
166
181
  ]
167
182
  desc 'Publish Gecode/R with Gecode packages on RubyForge'
168
183
  task :publish_gecoder_with_gecode_packages =>
@@ -3,7 +3,9 @@ require 'lib/gecoder/version'
3
3
  desc "Tag the release in svn"
4
4
  task :tag do
5
5
  base_url = `svn info`.match(/Repository Root: (.*)/n)[1]
6
- base_url.gsub!('rubyforge', "#{ENV['RUBYFORGE_USER']}@rubyforge")
6
+ unless base_url.include? ENV['RUBYFORGE_USER']
7
+ base_url.gsub!('rubyforge', "#{ENV['RUBYFORGE_USER']}@rubyforge")
8
+ end
7
9
  from = base_url + '/trunk'
8
10
  to = base_url + "/tags/gecoder-#{GecodeR::VERSION}"
9
11
  options = "-m \"Tag release Gecode/R #{GecodeR::VERSION}\""
metadata CHANGED
@@ -1,33 +1,87 @@
1
1
  --- !ruby/object:Gem::Specification
2
- rubygems_version: 0.9.4
3
- specification_version: 1
4
2
  name: gecoder
5
3
  version: !ruby/object:Gem::Version
6
- version: 0.8.3
7
- date: 2008-07-28 00:00:00 +02:00
8
- summary: Ruby interface to Gecode, an environment for constraint programming.
9
- require_paths:
10
- - lib
11
- email: gecoder-users@rubyforge.org
12
- homepage: http://gecoder.rubyforge.org
13
- rubyforge_project: gecoder
14
- description: Gecode/R is a Ruby interface to the Gecode constraint programming library. Gecode/R is intended for people with no previous experience of constraint programming, aiming to be easy to pick up and use.
15
- autorequire: gecoder
16
- default_executable:
17
- bindir: bin
18
- has_rdoc: true
19
- required_ruby_version: !ruby/object:Gem::Version::Requirement
20
- requirements:
21
- - - ">"
22
- - !ruby/object:Gem::Version
23
- version: 0.0.0
24
- version:
4
+ version: 0.9.0
25
5
  platform: ruby
26
- signing_key:
27
- cert_chain:
28
- post_install_message:
29
6
  authors:
30
- - - Gecode/R Development Team
7
+ - Gecode/R Development Team
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2008-08-18 00:00:00 +02:00
13
+ default_executable:
14
+ dependencies: []
15
+
16
+ description: Gecode/R is a Ruby interface to the Gecode constraint programming library. Gecode/R is intended for people with no previous experience of constraint programming, aiming to be easy to pick up and use.
17
+ email: gecoder-users@rubyforge.org
18
+ executables: []
19
+
20
+ extensions:
21
+ - ext/extconf.rb
22
+ extra_rdoc_files:
23
+ - README
24
+ - CHANGES
25
+ - LGPL-LICENSE
26
+ - lib/gecoder.rb
27
+ - lib/gecoder/bindings.rb
28
+ - lib/gecoder/interface/branch.rb
29
+ - lib/gecoder/interface/enum_matrix.rb
30
+ - lib/gecoder/interface/model_sugar.rb
31
+ - lib/gecoder/interface/search.rb
32
+ - lib/gecoder/interface/constraints.rb
33
+ - lib/gecoder/interface/variables.rb
34
+ - lib/gecoder/interface/enum_wrapper.rb
35
+ - lib/gecoder/interface/model.rb
36
+ - lib/gecoder/interface/constraints/set_var_constraints.rb
37
+ - lib/gecoder/interface/constraints/extensional_regexp.rb
38
+ - lib/gecoder/interface/constraints/selected_set_constraints.rb
39
+ - lib/gecoder/interface/constraints/int_enum_constraints.rb
40
+ - lib/gecoder/interface/constraints/set/channel.rb
41
+ - lib/gecoder/interface/constraints/set/cardinality.rb
42
+ - lib/gecoder/interface/constraints/set/include.rb
43
+ - lib/gecoder/interface/constraints/set/operation.rb
44
+ - lib/gecoder/interface/constraints/set/connection.rb
45
+ - lib/gecoder/interface/constraints/set/domain.rb
46
+ - lib/gecoder/interface/constraints/set/relation.rb
47
+ - lib/gecoder/interface/constraints/set_elements/relation.rb
48
+ - lib/gecoder/interface/constraints/fixnum_enum_constraints.rb
49
+ - lib/gecoder/interface/constraints/int/channel.rb
50
+ - lib/gecoder/interface/constraints/int/arithmetic.rb
51
+ - lib/gecoder/interface/constraints/int/linear.rb
52
+ - lib/gecoder/interface/constraints/int/domain.rb
53
+ - lib/gecoder/interface/constraints/int/relation.rb
54
+ - lib/gecoder/interface/constraints/set_enum_constraints.rb
55
+ - lib/gecoder/interface/constraints/bool/channel.rb
56
+ - lib/gecoder/interface/constraints/bool/boolean.rb
57
+ - lib/gecoder/interface/constraints/bool/linear.rb
58
+ - lib/gecoder/interface/constraints/int_enum/channel.rb
59
+ - lib/gecoder/interface/constraints/int_enum/distinct.rb
60
+ - lib/gecoder/interface/constraints/int_enum/element.rb
61
+ - lib/gecoder/interface/constraints/int_enum/arithmetic.rb
62
+ - lib/gecoder/interface/constraints/int_enum/count.rb
63
+ - lib/gecoder/interface/constraints/int_enum/extensional.rb
64
+ - lib/gecoder/interface/constraints/int_enum/equality.rb
65
+ - lib/gecoder/interface/constraints/int_enum/sort.rb
66
+ - lib/gecoder/interface/constraints/set_elements_constraints.rb
67
+ - lib/gecoder/interface/constraints/bool_var_constraints.rb
68
+ - lib/gecoder/interface/constraints/bool_enum_constraints.rb
69
+ - lib/gecoder/interface/constraints/selected_set/select.rb
70
+ - lib/gecoder/interface/constraints/fixnum_enum/element.rb
71
+ - lib/gecoder/interface/constraints/fixnum_enum/operation.rb
72
+ - lib/gecoder/interface/constraints/bool_enum/channel.rb
73
+ - lib/gecoder/interface/constraints/bool_enum/extensional.rb
74
+ - lib/gecoder/interface/constraints/bool_enum/relation.rb
75
+ - lib/gecoder/interface/constraints/int_var_constraints.rb
76
+ - lib/gecoder/interface/constraints/reifiable_constraints.rb
77
+ - lib/gecoder/interface/constraints/set_enum/channel.rb
78
+ - lib/gecoder/interface/constraints/set_enum/select.rb
79
+ - lib/gecoder/interface/constraints/set_enum/distinct.rb
80
+ - lib/gecoder/interface/constraints/set_enum/operation.rb
81
+ - lib/gecoder/interface/binding_changes.rb
82
+ - lib/gecoder/version.rb
83
+ - lib/gecoder/interface.rb
84
+ - lib/gecoder/bindings/bindings.rb
31
85
  files:
32
86
  - README
33
87
  - LGPL-LICENSE
@@ -38,6 +92,7 @@ files:
38
92
  - lib/gecoder/bindings.rb
39
93
  - lib/gecoder/interface/branch.rb
40
94
  - lib/gecoder/interface/enum_matrix.rb
95
+ - lib/gecoder/interface/model_sugar.rb
41
96
  - lib/gecoder/interface/search.rb
42
97
  - lib/gecoder/interface/constraints.rb
43
98
  - lib/gecoder/interface/variables.rb
@@ -45,17 +100,22 @@ files:
45
100
  - lib/gecoder/interface/model.rb
46
101
  - lib/gecoder/interface/constraints/set_var_constraints.rb
47
102
  - lib/gecoder/interface/constraints/extensional_regexp.rb
103
+ - lib/gecoder/interface/constraints/selected_set_constraints.rb
48
104
  - lib/gecoder/interface/constraints/int_enum_constraints.rb
49
105
  - lib/gecoder/interface/constraints/set/channel.rb
50
106
  - lib/gecoder/interface/constraints/set/cardinality.rb
107
+ - lib/gecoder/interface/constraints/set/include.rb
51
108
  - lib/gecoder/interface/constraints/set/operation.rb
52
109
  - lib/gecoder/interface/constraints/set/connection.rb
53
110
  - lib/gecoder/interface/constraints/set/domain.rb
54
111
  - lib/gecoder/interface/constraints/set/relation.rb
112
+ - lib/gecoder/interface/constraints/set_elements/relation.rb
113
+ - lib/gecoder/interface/constraints/fixnum_enum_constraints.rb
55
114
  - lib/gecoder/interface/constraints/int/channel.rb
56
115
  - lib/gecoder/interface/constraints/int/arithmetic.rb
57
116
  - lib/gecoder/interface/constraints/int/linear.rb
58
117
  - lib/gecoder/interface/constraints/int/domain.rb
118
+ - lib/gecoder/interface/constraints/int/relation.rb
59
119
  - lib/gecoder/interface/constraints/set_enum_constraints.rb
60
120
  - lib/gecoder/interface/constraints/bool/channel.rb
61
121
  - lib/gecoder/interface/constraints/bool/boolean.rb
@@ -68,22 +128,27 @@ files:
68
128
  - lib/gecoder/interface/constraints/int_enum/extensional.rb
69
129
  - lib/gecoder/interface/constraints/int_enum/equality.rb
70
130
  - lib/gecoder/interface/constraints/int_enum/sort.rb
131
+ - lib/gecoder/interface/constraints/set_elements_constraints.rb
71
132
  - lib/gecoder/interface/constraints/bool_var_constraints.rb
72
133
  - lib/gecoder/interface/constraints/bool_enum_constraints.rb
134
+ - lib/gecoder/interface/constraints/selected_set/select.rb
135
+ - lib/gecoder/interface/constraints/fixnum_enum/element.rb
136
+ - lib/gecoder/interface/constraints/fixnum_enum/operation.rb
73
137
  - lib/gecoder/interface/constraints/bool_enum/channel.rb
74
138
  - lib/gecoder/interface/constraints/bool_enum/extensional.rb
75
139
  - lib/gecoder/interface/constraints/bool_enum/relation.rb
76
140
  - lib/gecoder/interface/constraints/int_var_constraints.rb
77
141
  - lib/gecoder/interface/constraints/reifiable_constraints.rb
78
142
  - lib/gecoder/interface/constraints/set_enum/channel.rb
143
+ - lib/gecoder/interface/constraints/set_enum/select.rb
79
144
  - lib/gecoder/interface/constraints/set_enum/distinct.rb
80
145
  - lib/gecoder/interface/constraints/set_enum/operation.rb
81
- - lib/gecoder/interface/constraints/set_enum/selection.rb
82
146
  - lib/gecoder/interface/binding_changes.rb
83
147
  - lib/gecoder/version.rb
84
148
  - lib/gecoder/interface.rb
85
149
  - lib/gecoder/bindings/bindings.rb
86
150
  - example/queens.rb
151
+ - example/equation_system.rb
87
152
  - example/send_most_money.rb
88
153
  - example/magic_sequence.rb
89
154
  - example/send_more_money.rb
@@ -91,6 +156,7 @@ files:
91
156
  - example/sudoku.rb
92
157
  - example/square_tiling.rb
93
158
  - example/example_helper.rb
159
+ - example/money.rb
94
160
  - vendor/rust/bin
95
161
  - vendor/rust/bin/cxxgenerator.rb
96
162
  - vendor/rust/README
@@ -163,145 +229,163 @@ files:
163
229
  - specs/logging.rb
164
230
  - specs/branch.rb
165
231
  - specs/enum_matrix.rb
232
+ - specs/model_sugar.rb
166
233
  - specs/search.rb
167
234
  - specs/bool_var.rb
235
+ - specs/set_elements.rb
168
236
  - specs/distribution.rb
169
237
  - specs/spec_helper.rb
170
238
  - specs/int_var.rb
171
239
  - specs/enum_wrapper.rb
172
240
  - specs/model.rb
173
241
  - specs/set_var.rb
242
+ - specs/selected_set.rb
174
243
  - specs/constraints
175
- - specs/constraints/channel.rb
176
- - specs/constraints/bool_enum_relation.rb
177
- - specs/constraints/distinct.rb
178
- - specs/constraints/set_operation.rb
179
- - specs/constraints/element.rb
180
- - specs/constraints/set_domain.rb
181
- - specs/constraints/arithmetic.rb
244
+ - specs/constraints/property_helper.rb
245
+ - specs/constraints/set
246
+ - specs/constraints/set/channel.rb
247
+ - specs/constraints/set/cardinality_properties.rb
248
+ - specs/constraints/set/cardinality.rb
249
+ - specs/constraints/set/include.rb
250
+ - specs/constraints/set/operation.rb
251
+ - specs/constraints/set/connection.rb
252
+ - specs/constraints/set/domain.rb
253
+ - specs/constraints/set/relation.rb
254
+ - specs/constraints/set_elements
255
+ - specs/constraints/set_elements/relation.rb
256
+ - specs/constraints/int
257
+ - specs/constraints/int/channel.rb
258
+ - specs/constraints/int/arithmetic.rb
259
+ - specs/constraints/int/linear_properties.rb
260
+ - specs/constraints/int/linear.rb
261
+ - specs/constraints/int/domain.rb
262
+ - specs/constraints/int/relation.rb
182
263
  - specs/constraints/constraints.rb
183
- - specs/constraints/count.rb
184
- - specs/constraints/cardinality.rb
185
- - specs/constraints/set_relation.rb
186
- - specs/constraints/extensional.rb
187
- - specs/constraints/equality.rb
188
- - specs/constraints/boolean.rb
189
- - specs/constraints/int_relation.rb
190
- - specs/constraints/sort.rb
264
+ - specs/constraints/bool
265
+ - specs/constraints/bool/boolean_properties.rb
266
+ - specs/constraints/bool/boolean.rb
267
+ - specs/constraints/bool/linear.rb
268
+ - specs/constraints/int_enum
269
+ - specs/constraints/int_enum/channel.rb
270
+ - specs/constraints/int_enum/distinct.rb
271
+ - specs/constraints/int_enum/element.rb
272
+ - specs/constraints/int_enum/arithmetic.rb
273
+ - specs/constraints/int_enum/count.rb
274
+ - specs/constraints/int_enum/extensional.rb
275
+ - specs/constraints/int_enum/equality.rb
276
+ - specs/constraints/int_enum/sort.rb
191
277
  - specs/constraints/constraint_helper.rb
192
- - specs/constraints/int_domain.rb
193
278
  - specs/constraints/reification_sugar.rb
194
- - specs/constraints/selection.rb
195
- - specs/constraints/connection.rb
196
- - specs/constraints/linear.rb
279
+ - specs/constraints/selected_set
280
+ - specs/constraints/selected_set/select.rb
281
+ - specs/constraints/selected_set/select_properties.rb
282
+ - specs/constraints/constraint_receivers.rb
283
+ - specs/constraints/fixnum_enum
284
+ - specs/constraints/fixnum_enum/element.rb
285
+ - specs/constraints/fixnum_enum/operation.rb
286
+ - specs/constraints/bool_enum
287
+ - specs/constraints/bool_enum/channel.rb
288
+ - specs/constraints/bool_enum/bool_enum_relation.rb
289
+ - specs/constraints/bool_enum/extensional.rb
290
+ - specs/constraints/operands.rb
291
+ - specs/constraints/set_enum
292
+ - specs/constraints/set_enum/channel.rb
293
+ - specs/constraints/set_enum/select.rb
294
+ - specs/constraints/set_enum/distinct.rb
295
+ - specs/constraints/set_enum/operation.rb
197
296
  - specs/examples.rb
198
297
  - ext/gecoder.cpp
199
298
  - ext/vararray.cpp
200
299
  - ext/gecoder.h
201
300
  - ext/vararray.h
202
301
  - ext/extconf.rb
302
+ has_rdoc: true
303
+ homepage: http://gecoder.rubyforge.org
304
+ post_install_message:
305
+ rdoc_options:
306
+ - --line-numbers
307
+ - --inline-source
308
+ - --accessor
309
+ - delegate
310
+ - --main
311
+ - README
312
+ require_paths:
313
+ - lib
314
+ required_ruby_version: !ruby/object:Gem::Requirement
315
+ requirements:
316
+ - - ">="
317
+ - !ruby/object:Gem::Version
318
+ version: "0"
319
+ version:
320
+ required_rubygems_version: !ruby/object:Gem::Requirement
321
+ requirements:
322
+ - - ">="
323
+ - !ruby/object:Gem::Version
324
+ version: "0"
325
+ version:
326
+ requirements:
327
+ - Gecode 2.1.1
328
+ rubyforge_project: gecoder
329
+ rubygems_version: 1.2.0
330
+ signing_key:
331
+ specification_version: 2
332
+ summary: Ruby interface to Gecode, an environment for constraint programming.
203
333
  test_files:
204
334
  - specs/logging.rb
205
335
  - specs/branch.rb
206
336
  - specs/enum_matrix.rb
337
+ - specs/model_sugar.rb
207
338
  - specs/search.rb
208
339
  - specs/bool_var.rb
340
+ - specs/set_elements.rb
209
341
  - specs/distribution.rb
210
342
  - specs/spec_helper.rb
211
343
  - specs/int_var.rb
212
344
  - specs/enum_wrapper.rb
213
345
  - specs/model.rb
214
346
  - specs/set_var.rb
215
- - specs/constraints/channel.rb
216
- - specs/constraints/bool_enum_relation.rb
217
- - specs/constraints/distinct.rb
218
- - specs/constraints/set_operation.rb
219
- - specs/constraints/element.rb
220
- - specs/constraints/set_domain.rb
221
- - specs/constraints/arithmetic.rb
347
+ - specs/selected_set.rb
348
+ - specs/constraints/property_helper.rb
349
+ - specs/constraints/set/channel.rb
350
+ - specs/constraints/set/cardinality_properties.rb
351
+ - specs/constraints/set/cardinality.rb
352
+ - specs/constraints/set/include.rb
353
+ - specs/constraints/set/operation.rb
354
+ - specs/constraints/set/connection.rb
355
+ - specs/constraints/set/domain.rb
356
+ - specs/constraints/set/relation.rb
357
+ - specs/constraints/set_elements/relation.rb
358
+ - specs/constraints/int/channel.rb
359
+ - specs/constraints/int/arithmetic.rb
360
+ - specs/constraints/int/linear_properties.rb
361
+ - specs/constraints/int/linear.rb
362
+ - specs/constraints/int/domain.rb
363
+ - specs/constraints/int/relation.rb
222
364
  - specs/constraints/constraints.rb
223
- - specs/constraints/count.rb
224
- - specs/constraints/cardinality.rb
225
- - specs/constraints/set_relation.rb
226
- - specs/constraints/extensional.rb
227
- - specs/constraints/equality.rb
228
- - specs/constraints/boolean.rb
229
- - specs/constraints/int_relation.rb
230
- - specs/constraints/sort.rb
365
+ - specs/constraints/bool/boolean_properties.rb
366
+ - specs/constraints/bool/boolean.rb
367
+ - specs/constraints/bool/linear.rb
368
+ - specs/constraints/int_enum/channel.rb
369
+ - specs/constraints/int_enum/distinct.rb
370
+ - specs/constraints/int_enum/element.rb
371
+ - specs/constraints/int_enum/arithmetic.rb
372
+ - specs/constraints/int_enum/count.rb
373
+ - specs/constraints/int_enum/extensional.rb
374
+ - specs/constraints/int_enum/equality.rb
375
+ - specs/constraints/int_enum/sort.rb
231
376
  - specs/constraints/constraint_helper.rb
232
- - specs/constraints/int_domain.rb
233
377
  - specs/constraints/reification_sugar.rb
234
- - specs/constraints/selection.rb
235
- - specs/constraints/connection.rb
236
- - specs/constraints/linear.rb
378
+ - specs/constraints/selected_set/select.rb
379
+ - specs/constraints/selected_set/select_properties.rb
380
+ - specs/constraints/constraint_receivers.rb
381
+ - specs/constraints/fixnum_enum/element.rb
382
+ - specs/constraints/fixnum_enum/operation.rb
383
+ - specs/constraints/bool_enum/channel.rb
384
+ - specs/constraints/bool_enum/bool_enum_relation.rb
385
+ - specs/constraints/bool_enum/extensional.rb
386
+ - specs/constraints/operands.rb
387
+ - specs/constraints/set_enum/channel.rb
388
+ - specs/constraints/set_enum/select.rb
389
+ - specs/constraints/set_enum/distinct.rb
390
+ - specs/constraints/set_enum/operation.rb
237
391
  - specs/examples.rb
238
- rdoc_options:
239
- - --title
240
- - Gecode/R
241
- - --line-numbers
242
- - --inline-source
243
- - --accessor
244
- - delegate
245
- - --main
246
- - README
247
- extra_rdoc_files:
248
- - README
249
- - CHANGES
250
- - LGPL-LICENSE
251
- - lib/gecoder.rb
252
- - lib/gecoder/bindings.rb
253
- - lib/gecoder/interface/branch.rb
254
- - lib/gecoder/interface/enum_matrix.rb
255
- - lib/gecoder/interface/search.rb
256
- - lib/gecoder/interface/constraints.rb
257
- - lib/gecoder/interface/variables.rb
258
- - lib/gecoder/interface/enum_wrapper.rb
259
- - lib/gecoder/interface/model.rb
260
- - lib/gecoder/interface/constraints/set_var_constraints.rb
261
- - lib/gecoder/interface/constraints/extensional_regexp.rb
262
- - lib/gecoder/interface/constraints/int_enum_constraints.rb
263
- - lib/gecoder/interface/constraints/set/channel.rb
264
- - lib/gecoder/interface/constraints/set/cardinality.rb
265
- - lib/gecoder/interface/constraints/set/operation.rb
266
- - lib/gecoder/interface/constraints/set/connection.rb
267
- - lib/gecoder/interface/constraints/set/domain.rb
268
- - lib/gecoder/interface/constraints/set/relation.rb
269
- - lib/gecoder/interface/constraints/int/channel.rb
270
- - lib/gecoder/interface/constraints/int/arithmetic.rb
271
- - lib/gecoder/interface/constraints/int/linear.rb
272
- - lib/gecoder/interface/constraints/int/domain.rb
273
- - lib/gecoder/interface/constraints/set_enum_constraints.rb
274
- - lib/gecoder/interface/constraints/bool/channel.rb
275
- - lib/gecoder/interface/constraints/bool/boolean.rb
276
- - lib/gecoder/interface/constraints/bool/linear.rb
277
- - lib/gecoder/interface/constraints/int_enum/channel.rb
278
- - lib/gecoder/interface/constraints/int_enum/distinct.rb
279
- - lib/gecoder/interface/constraints/int_enum/element.rb
280
- - lib/gecoder/interface/constraints/int_enum/arithmetic.rb
281
- - lib/gecoder/interface/constraints/int_enum/count.rb
282
- - lib/gecoder/interface/constraints/int_enum/extensional.rb
283
- - lib/gecoder/interface/constraints/int_enum/equality.rb
284
- - lib/gecoder/interface/constraints/int_enum/sort.rb
285
- - lib/gecoder/interface/constraints/bool_var_constraints.rb
286
- - lib/gecoder/interface/constraints/bool_enum_constraints.rb
287
- - lib/gecoder/interface/constraints/bool_enum/channel.rb
288
- - lib/gecoder/interface/constraints/bool_enum/extensional.rb
289
- - lib/gecoder/interface/constraints/bool_enum/relation.rb
290
- - lib/gecoder/interface/constraints/int_var_constraints.rb
291
- - lib/gecoder/interface/constraints/reifiable_constraints.rb
292
- - lib/gecoder/interface/constraints/set_enum/channel.rb
293
- - lib/gecoder/interface/constraints/set_enum/distinct.rb
294
- - lib/gecoder/interface/constraints/set_enum/operation.rb
295
- - lib/gecoder/interface/constraints/set_enum/selection.rb
296
- - lib/gecoder/interface/binding_changes.rb
297
- - lib/gecoder/version.rb
298
- - lib/gecoder/interface.rb
299
- - lib/gecoder/bindings/bindings.rb
300
- executables: []
301
-
302
- extensions:
303
- - ext/extconf.rb
304
- requirements:
305
- - Gecode 2.1.1
306
- dependencies: []
307
-