or-tools 0.10.0 → 0.10.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a065257839dbcfaf581658f48c0aa1beeac58be2501dd5f8af71e071b3dba3b7
4
- data.tar.gz: '0088e7e979a58ab54f8f1997fb9e60e0533d7c9e9412e40dd46840082123a7ef'
3
+ metadata.gz: 6c2f60a5c859f2659349bfb6f77336d2078f8d8747b76fcd8e3e10e7cfb25e28
4
+ data.tar.gz: a8d18cf5002f42735d1e458451f7902909ad7e552ed78e77ef52477108bbed16
5
5
  SHA512:
6
- metadata.gz: cc1104b210214512d2467ad26ddcaf28b40a761ba675e7236908c067fa12e5b25858c61dc5972130fcab47460c0c8a080d963fd9e7af75847d1525bdb80b728b
7
- data.tar.gz: f5365be019631c1684fbb274d5fff703de405771fd286ccb8047660fb88060a8bb77ace47a906e19ae12690488755c14222116f0c2210dc92bd7c2931567ed0f
6
+ metadata.gz: 7394863f44908fcadda86df82fa469c69e6178cdc376db90cc2a1d1142738af7f60b22eb0d66ad252ff1c8fd4a93d169194b462973ce158797519d0b5bb8a5dc
7
+ data.tar.gz: c8b8ca7f9f0c78e2dbf88555f23d5463e0b281e65afd83ebcd581062203d8b348aa76acf87f0bb55fef5736882cea48e33cd9a6f801addc60e80de9051b7fcf8
data/CHANGELOG.md CHANGED
@@ -1,3 +1,8 @@
1
+ ## 0.10.1 (2023-03-20)
2
+
3
+ - Added `domain` method to `SatIntVar`
4
+ - Added `add_linear_constraint` and `add_linear_expression_in_domain` methods to `CpModel`
5
+
1
6
  ## 0.10.0 (2023-03-15)
2
7
 
3
8
  - Updated OR-Tools to 9.6
@@ -3,6 +3,7 @@
3
3
 
4
4
  #include "ext.h"
5
5
 
6
+ using operations_research::Domain;
6
7
  using operations_research::sat::BoolVar;
7
8
  using operations_research::sat::Constraint;
8
9
  using operations_research::sat::CpModelBuilder;
@@ -98,8 +99,14 @@ namespace Rice::detail
98
99
  }
99
100
 
100
101
  void init_constraint(Rice::Module& m) {
102
+ Rice::define_class_under<Domain>(m, "Domain")
103
+ .define_constructor(Rice::Constructor<Domain, int64_t, int64_t>())
104
+ .define_method("min", &Domain::Min)
105
+ .define_method("max", &Domain::Max);
106
+
101
107
  rb_cSatIntVar = Rice::define_class_under<IntVar>(m, "SatIntVar")
102
- .define_method("name", &IntVar::Name);
108
+ .define_method("name", &IntVar::Name)
109
+ .define_method("domain", &IntVar::Domain);
103
110
 
104
111
  Rice::define_class_under<IntervalVar>(m, "SatIntervalVar")
105
112
  .define_method("name", &IntervalVar::Name);
@@ -230,12 +237,16 @@ void init_constraint(Rice::Module& m) {
230
237
  [](CpModelBuilder& self, LinearExpr x, LinearExpr y) {
231
238
  return self.AddLessThan(x, y);
232
239
  })
233
- // TODO add domain
234
- // .define_method(
235
- // "add_linear_constraint",
236
- // [](CpModelBuilder& self, LinearExpr expr, Domain domain) {
237
- // return self.AddLinearConstraint(expr, domain);
238
- // })
240
+ .define_method(
241
+ "add_linear_constraint",
242
+ [](CpModelBuilder& self, LinearExpr expr, int64_t lb, int64_t ub) {
243
+ return self.AddLinearConstraint(expr, Domain(lb, ub));
244
+ })
245
+ .define_method(
246
+ "add_linear_expression_in_domain",
247
+ [](CpModelBuilder& self, LinearExpr expr, Domain domain) {
248
+ return self.AddLinearConstraint(expr, domain);
249
+ })
239
250
  .define_method(
240
251
  "add_not_equal",
241
252
  [](CpModelBuilder& self, LinearExpr x, LinearExpr y) {
@@ -1,3 +1,3 @@
1
1
  module ORTools
2
- VERSION = "0.10.0"
2
+ VERSION = "0.10.1"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: or-tools
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.10.0
4
+ version: 0.10.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrew Kane
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-03-15 00:00:00.000000000 Z
11
+ date: 2023-03-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rice