Supported solvers are:
Solvers we plan to support in the future:
An optional type is a templated class which modelize the possibility in C++ to have "no value" in a variable. It is safer than passing a null pointer as an exception will be launched if you try to dereference a variable which has no content.
See the following example:
A variant is an object-oriented way to define a C enum. Here is a small example:
Please note that a variant can never be empty.
See the Boost.Optional and Boost.Variant documentation for more information.