Remove dependency of `TypeNode` on `Node` (#7690)
authorAndres Noetzli <andres.noetzli@gmail.com>
Wed, 24 Nov 2021 05:53:01 +0000 (21:53 -0800)
committerGitHub <noreply@github.com>
Wed, 24 Nov 2021 05:53:01 +0000 (05:53 +0000)
commit01ff626de4261af83f69552eaba038399c428882
tree0ae7538a70311e268d7fa226e2c900c3b7aa9100
parente1d04c40218a4170fcc6885762e193696d4c958e
Remove dependency of `TypeNode` on `Node` (#7690)

This is further work towards breaking cyclic dependencies in the `expr`
folder.
23 files changed:
src/expr/CMakeLists.txt
src/expr/dtype.cpp
src/expr/dtype_cons.cpp
src/expr/node_converter.cpp
src/expr/node_manager.h
src/expr/node_manager_template.cpp
src/expr/type_node.cpp
src/expr/type_node.h
src/expr/type_properties_template.cpp [new file with mode: 0644]
src/expr/type_properties_template.h
src/theory/arrays/theory_arrays_type_rules.cpp
src/theory/datatypes/datatypes_rewriter.cpp
src/theory/datatypes/proof_checker.cpp
src/theory/datatypes/theory_datatypes.cpp
src/theory/quantifiers/candidate_rewrite_database.cpp
src/theory/quantifiers/sygus/sygus_grammar_cons.cpp
src/theory/quantifiers/sygus/sygus_reconstruct.cpp
src/theory/quantifiers/sygus/sygus_unif_strat.cpp
src/theory/smt_engine_subsolver.cpp
src/theory/strings/sequences_rewriter.cpp
src/theory/theory_model.cpp
src/theory/uf/theory_uf_type_rules.cpp
test/unit/util/datatype_black.cpp