New C++ Api: First batch of API guards. (#4557)
authorAina Niemetz <aina.niemetz@gmail.com>
Thu, 4 Jun 2020 03:56:24 +0000 (20:56 -0700)
committerGitHub <noreply@github.com>
Thu, 4 Jun 2020 03:56:24 +0000 (20:56 -0700)
commit5938faaf034a761f3462d8e03b86b1726a332f68
tree864fcd067ac024689b2fb3ee782ce7edd99e0a3a
parent418b0281e62a6b657da32f6504965269ad90c18b
New C++ Api: First batch of API guards. (#4557)

This is the first batch of API guards, mainly extending existing guards
in the Solver object with checks that Ops, Terms, Sorts, and datatype objects
are associated to this solver object.

This further changes how DatatypeConstructorDecl objects are created. Previously,
they were not created via the Solver object (while DatatypeDecl was). Now, they are
created via Solver::mkDatatypeConstructorDecl, consistent with how DatatypeDecl
objects are created.
13 files changed:
examples/api/datatypes-new.cpp
examples/api/python/datatypes.py
src/api/cvc4cpp.cpp
src/api/cvc4cpp.h
src/api/python/cvc4.pxd
src/api/python/cvc4.pxi
src/parser/cvc/Cvc.g
src/parser/smt2/Smt2.g
src/parser/tptp/Tptp.g
test/unit/api/datatype_api_black.h
test/unit/api/solver_black.h
test/unit/api/sort_black.h
test/unit/api/term_black.h