Clean up relationship of metakind and node_manager (#7649)
authorAndres Noetzli <andres.noetzli@gmail.com>
Fri, 19 Nov 2021 22:23:39 +0000 (14:23 -0800)
committerGitHub <noreply@github.com>
Fri, 19 Nov 2021 22:23:39 +0000 (22:23 +0000)
commitf324550c46da99333a43aacdd7b9651eb23fa6ca
treeef925c033bdcc363ea76a8555a49d288e8520ef7
parent90cc5b0eccafd2f571b3bc388095bf8976cb8d18
Clean up relationship of metakind and node_manager (#7649)

Before this commit, we were including `metakind.h` twice in
`node_manager.h`, once without and once with defining
`CVC5__NODE_MANAGER_NEEDS_CONSTANT_MAP`. Additionally, `mkmetakind`
generated structs that mapped types to kinds. This commit makes all of
this obsolete by directly generating instantiations of `mkConst`, which
allows us to get rid of the double include and the `ConstantMap`.
src/expr/CMakeLists.txt
src/expr/metakind_template.cpp
src/expr/metakind_template.h
src/expr/mkmetakind
src/expr/node_manager.cpp [deleted file]
src/expr/node_manager.h
src/expr/node_manager_template.cpp [new file with mode: 0644]