Fix solve_with_parameters
This commit is contained in:
committed by
Guillaume P
parent
44d16c2465
commit
eb3c60678c
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
[package]
|
[package]
|
||||||
name = "cp_sat"
|
name = "cp_sat"
|
||||||
version = "0.2.0"
|
version = "0.2.1"
|
||||||
edition = "2018"
|
edition = "2018"
|
||||||
description = "Rust bindings to the Google CP-SAT constraint programming solver."
|
description = "Rust bindings to the Google CP-SAT constraint programming solver."
|
||||||
documentation = "https://docs.rs/cp_sat"
|
documentation = "https://docs.rs/cp_sat"
|
||||||
|
|||||||
+1
-3
@@ -303,14 +303,12 @@ impl CpModelBuilder {
|
|||||||
///
|
///
|
||||||
/// ```
|
/// ```
|
||||||
/// # use cp_sat::builder::CpModelBuilder;
|
/// # use cp_sat::builder::CpModelBuilder;
|
||||||
/// # use cp_sat::proto::{CpSolverStatus, SatParameters};
|
/// # use cp_sat::proto::CpSolverStatus;
|
||||||
/// let mut model = CpModelBuilder::default();
|
/// let mut model = CpModelBuilder::default();
|
||||||
/// let x = model.new_int_var([(0, 100)]);
|
/// let x = model.new_int_var([(0, 100)]);
|
||||||
/// let y = model.new_bool_var();
|
/// let y = model.new_bool_var();
|
||||||
/// model.add_hint(x, 42);
|
/// model.add_hint(x, 42);
|
||||||
/// model.add_hint(y, 1);
|
/// model.add_hint(y, 1);
|
||||||
/// model.add_ge([(1, x), (3, y.into())], 3);
|
|
||||||
/// model.maximize(y);
|
|
||||||
/// let response = model.solve();
|
/// let response = model.solve();
|
||||||
/// assert_eq!(response.status(), CpSolverStatus::Optimal);
|
/// assert_eq!(response.status(), CpSolverStatus::Optimal);
|
||||||
/// ```
|
/// ```
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ cp_sat_wrapper_solve(
|
|||||||
assert(res);
|
assert(res);
|
||||||
|
|
||||||
sat::SatParameters params;
|
sat::SatParameters params;
|
||||||
res = model.ParseFromArray(params_buf, params_size);
|
res = params.ParseFromArray(params_buf, params_size);
|
||||||
assert(res);
|
assert(res);
|
||||||
|
|
||||||
sat::CpSolverResponse response = sat::SolveWithParameters(model, params);
|
sat::CpSolverResponse response = sat::SolveWithParameters(model, params);
|
||||||
|
|||||||
@@ -0,0 +1,12 @@
|
|||||||
|
use cp_sat::builder::CpModelBuilder;
|
||||||
|
use cp_sat::proto::{CpSolverStatus, SatParameters};
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn simple_sat_parameters() {
|
||||||
|
let mut model = CpModelBuilder::default();
|
||||||
|
let x = model.new_bool_var();
|
||||||
|
let params = SatParameters::default();
|
||||||
|
let response = model.solve_with_parameters(¶ms);
|
||||||
|
assert_eq!(response.status(), CpSolverStatus::Optimal);
|
||||||
|
let _x_value = x.solution_value(&response);
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user