C++ API ===================== The C++ API is the primary interface for cvc5 and exposes the full functionality of cvc5. The :doc:`quickstart guide ` gives a short introduction, while the following class hierarchy of the ``cvc5`` namespace provides more details on the individual classes. For most applications, the :cpp:class:`Solver ` class is the main entry point to cvc5. .. container:: hide-toctree .. toctree:: quickstart exceptions datatype datatypeconstructor datatypeconstructordecl datatypedecl datatypeselector driveroptions grammar kind modes op optioninfo result roundingmode solver sort sortkind statistics synthresult term unknownexplanation Class hierarchy ^^^^^^^^^^^^^^^ ``namespace cvc5 {`` * class :cpp:class:`CVC5ApiException ` * class :cpp:class:`CVC5ApiRecoverableException ` * class :ref:`api/cpp/datatype:datatype` * class :cpp:class:`const_iterator ` * class :ref:`api/cpp/datatypeconstructor:datatypeconstructor` * class :cpp:class:`const_iterator ` * class :ref:`api/cpp/datatypeconstructordecl:datatypeconstructordecl` * class :ref:`api/cpp/datatypedecl:datatypedecl` * class :ref:`api/cpp/datatypeselector:datatypeselector` * class :ref:`api/cpp/driveroptions:driveroptions` * class :ref:`api/cpp/grammar:grammar` * class :ref:`api/cpp/op:op` * class :ref:`api/cpp/optioninfo:optioninfo` * class :ref:`api/cpp/result:result` * class :ref:`api/cpp/solver:solver` * class :ref:`api/cpp/sort:sort` * class :cpp:class:`Stat ` * class :cpp:class:`Statistics ` * class :ref:`api/cpp/synthresult:synthresult` * class :ref:`api/cpp/term:term` * class :cpp:class:`const_iterator ` * enum class :ref:`api/cpp/kind:kind` * enum class :ref:`api/cpp/sortkind:sortkind` * enum class :ref:`api/cpp/roundingmode:roundingmode` * enum class :ref:`api/cpp/unknownexplanation:unknownexplanation` ``namespace modes {`` * enum classes for :ref:`configuration modes` * enum class for :cpp:enum:`cvc5::modes::BlockModelsMode` * enum class for :cpp:enum:`cvc5::modes::LearnedLitType` * enum class for :cpp:enum:`cvc5::modes::ProofComponent` * enum class for :cpp:enum:`cvc5::modes::FindSynthTarget` ``}`` ``namespace parser {`` * class :cpp:class:`Command ` * class :ref:`api/cpp/inputparser:inputparser` * class :cpp:class:`ParserException ` * class :cpp:class:`SymbolManager ` ``}`` ``}``