Coin CBC Rust bindings
This crate exposes safe and efficient bindings to the Coin CBC C API.
For more information on how to install the
Cbc library dependencies,
see the respective README section.
This project is distributed under the MIT License by Kardinal.
By default, this crate enforces a global lock which will force multiple
problems to be solved sequentially even if
solve is called from multiple
threads in parallel. This is because by default, libcbc is not thread safe.
If you have compiled your own libcbc with the
you can disable this behavior by disabling the
feature on this crate. Do not disable this feature if you are not certain
that you have a thread safe libcbc, or you will be exposed to memory corruption
pub use raw::Sense;
- A raw and safe binding to the Coin CBC C API.
- A column identifier.
- A MILP model.
- A row identifier.
- A solution to a MILP problem.
- Panics if the installed version of libcbc is less than a given version
- Returns a tuple of (major, minor, patch) version of the libcbc installed on the current system
- Returns an error if the installed version of libcbc is less than a given version