| Crates.io | ipasir |
| lib.rs | ipasir |
| version | 0.3.1 |
| created_at | 2018-04-24 17:19:28.867735+00 |
| updated_at | 2020-04-12 07:23:13.602753+00 |
| description | Bindings for the IPASIR API to communicate with incremental SAT solvers. |
| homepage | |
| repository | https://github.com/robbepop/ipasir-rs |
| max_upload_size | |
| id | 62140 |
| size | 31,860 |
| Docs | Crates.io |
|---|---|
IPASIR is a simple C interface to incremental SAT solvers. (It stands for Reentrant Incremental Sat solver API, in reverse.) This interface is supported by a few different solvers because it is used in the SAT competition's incremental track. The IPASIR distribution, containing the interface and some sample solvers, can be found at this GitHub repository. This IPASIR library is an attempt to semi-soundly allow Rust programs to interface with such SAT solver libraries.
For users of this FFI there are two distinct ways of usage.
Users can build their application on top of the raw module that offers direct but unsafe calls
into the C-API.
The recommended way to use this FFI is to use the Solver type that acts as safe wrapper around
the C-API.
Allocate a new solver instance with: ipasir::Solver::init()
Licensed under either of
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
Error and Display for the error types of the crate.ipasir::ffi::Solver is now the FFI C targeting solver wrapper for Rust.IpasirSolver is the trait to be implemented by Rust IPASIR compatible solversraw module to sys to better fit with the rest of the ecosystem.Lit::to_raw is no longer publicly visible.LitOrEnd and EndOfClause.Solver::add API into Solver::add_lit and Solver::finalize_clause.Clause::len and Clause::get methods.Lit::new_unchecked constructor.Lit::sign and Sign enum.Lit::var method.SolveControl now publicly visible. (Was accidentally private before.)