mirror of
https://github.com/AdaCore/cvc5.git
synced 2026-02-12 12:32:16 -08:00
This PR does multiple things: - the kinds are changed from custom objects to a proper enum.Enum class (including according changes to the cython code and the kind generation scripts) - all examples and tests are modified to account for the change how to use kinds (Kind instead of kinds) - add docstrings to the kind enum values - add a custom documenter that properly renders enums via autodoc - extend doxygen setup so that we can write comments as rst (allowing us to copy the documentation for kinds from the cpp api to the other apis)
67 lines
2.0 KiB
ReStructuredText
67 lines
2.0 KiB
ReStructuredText
C++ API
|
|
=====================
|
|
|
|
The C++ API is the primary interface for cvc5 and exposes the full functionality of cvc5.
|
|
The :doc:`quickstart guide <quickstart>` gives a short introduction, while the following class hierarchy of the ``cvc5::api`` namespace provides more details on the individual classes.
|
|
For most applications, the :cpp:class:`Solver <cvc5::api::Solver>` class is the main entry point to cvc5.
|
|
|
|
|
|
.. container:: hide-toctree
|
|
|
|
.. toctree::
|
|
|
|
quickstart
|
|
exceptions
|
|
datatype
|
|
datatypeconstructor
|
|
datatypeconstructordecl
|
|
datatypedecl
|
|
datatypeselector
|
|
grammar
|
|
kind
|
|
op
|
|
optioninfo
|
|
result
|
|
roundingmode
|
|
solver
|
|
sort
|
|
statistics
|
|
term
|
|
|
|
|
|
Class hierarchy
|
|
^^^^^^^^^^^^^^^
|
|
|
|
``namespace cvc5::api {``
|
|
|
|
* class :cpp:class:`CVC5ApiException <cvc5::api::CVC5ApiException>`
|
|
* class :cpp:class:`CVC5ApiRecoverableException <cvc5::api::CVC5ApiRecoverableException>`
|
|
* class :ref:`api/cpp/datatype:datatype`
|
|
|
|
* class :cpp:class:`const_iterator <cvc5::api::Datatype::const_iterator>`
|
|
|
|
* class :ref:`api/cpp/datatypeconstructor:datatypeconstructor`
|
|
|
|
* class :cpp:class:`const_iterator <cvc5::api::DatatypeConstructor::const_iterator>`
|
|
|
|
* class :ref:`api/cpp/datatypeconstructordecl:datatypeconstructordecl`
|
|
* class :ref:`api/cpp/datatypedecl:datatypedecl`
|
|
* class :ref:`api/cpp/datatypeselector:datatypeselector`
|
|
* class :ref:`api/cpp/grammar:grammar`
|
|
* class :ref:`api/cpp/kind:kind`
|
|
* class :ref:`api/cpp/op:op`
|
|
* class :ref:`api/cpp/optioninfo:optioninfo`
|
|
* class :ref:`api/cpp/result:result`
|
|
|
|
* enum :cpp:enum:`UnknownExplanation <cvc5::api::Result::UnknownExplanation>`
|
|
|
|
* class :ref:`api/cpp/roundingmode:roundingmode`
|
|
* class :ref:`api/cpp/solver:solver`
|
|
* class :ref:`api/cpp/sort:sort`
|
|
* class :cpp:class:`Stat <cvc5::api::Stat>`
|
|
* class :cpp:class:`Statistics <cvc5::api::Statistics>`
|
|
* class :ref:`api/cpp/term:term`
|
|
|
|
* class :cpp:class:`const_iterator <cvc5::api::Term::const_iterator>`
|
|
|
|
``}`` |