Skip to main content

highs_sys/
lib.rs

1#![allow(non_upper_case_globals)]
2#![allow(non_camel_case_types)]
3#![allow(non_snake_case)]
4
5include!(concat!(env!("OUT_DIR"), "/c_bindings.rs"));
6
7pub const MODEL_STATUS_NOTSET: HighsInt = 0;
8pub const MODEL_STATUS_LOAD_ERROR: HighsInt = 1;
9pub const MODEL_STATUS_MODEL_ERROR: HighsInt = 2;
10pub const MODEL_STATUS_PRESOLVE_ERROR: HighsInt = 3;
11pub const MODEL_STATUS_SOLVE_ERROR: HighsInt = 4;
12pub const MODEL_STATUS_POSTSOLVE_ERROR: HighsInt = 5;
13pub const MODEL_STATUS_MODEL_EMPTY: HighsInt = 6;
14pub const MODEL_STATUS_OPTIMAL: HighsInt = 7;
15pub const MODEL_STATUS_INFEASIBLE: HighsInt = 8;
16pub const MODEL_STATUS_UNBOUNDED_OR_INFEASIBLE: HighsInt = 9;
17pub const MODEL_STATUS_UNBOUNDED: HighsInt = 10;
18pub const MODEL_STATUS_OBJECTIVE_BOUND: HighsInt = 11;
19pub const MODEL_STATUS_OBJECTIVE_TARGET: HighsInt = 12;
20pub const MODEL_STATUS_REACHED_TIME_LIMIT: HighsInt = 13;
21pub const MODEL_STATUS_REACHED_ITERATION_LIMIT: HighsInt = 14;
22pub const MODEL_STATUS_UNKNOWN: HighsInt = 15;
23pub const MODEL_STATUS_REACHED_SOLUTION_LIMIT: HighsInt = 16;
24pub const MODEL_STATUS_REACHED_INTERRUPT: HighsInt = 17;
25pub const MODEL_STATUS_REACHED_MEMORY_LIMIT: HighsInt = 18;
26pub const MODEL_STATUS_MIN: HighsInt = MODEL_STATUS_NOTSET;
27pub const MODEL_STATUS_MAX: HighsInt = MODEL_STATUS_REACHED_MEMORY_LIMIT;
28
29pub const STATUS_OK: HighsInt = 0;
30pub const STATUS_WARNING: HighsInt = 1;
31pub const STATUS_ERROR: HighsInt = -1;
32
33pub const SOLUTION_STATUS_NONE: HighsInt = 0;
34pub const SOLUTION_STATUS_INFEASIBLE: HighsInt = 1;
35pub const SOLUTION_STATUS_FEASIBLE: HighsInt = 2;
36
37pub const MATRIX_FORMAT_NONE: HighsInt = 0;
38pub const MATRIX_FORMAT_COLUMN_WISE: HighsInt = 1;
39pub const MATRIX_FORMAT_ROW_WISE: HighsInt = 2;
40
41pub const OBJECTIVE_SENSE_MINIMIZE: HighsInt = 1;
42pub const OBJECTIVE_SENSE_MAXIMIZE: HighsInt = -1;
43
44// Variable types, as used in the `integrality` array passed to `Highs_passMip`
45// and in `Highs_changeColIntegrality`. These mirror the `kHighsVarType*`
46// constants in HiGHS' C API.
47pub const VAR_TYPE_CONTINUOUS: HighsInt = 0;
48pub const VAR_TYPE_INTEGER: HighsInt = 1;
49pub const VAR_TYPE_SEMI_CONTINUOUS: HighsInt = 2;
50pub const VAR_TYPE_SEMI_INTEGER: HighsInt = 3;
51pub const VAR_TYPE_IMPLICIT_INTEGER: HighsInt = 4;