3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2026-06-02 07:07:52 +00:00
z3/src/ast
Copilot ee037dcafe
Convert internal class enums to enum class for type safety (#8158)
* Initial plan

* Convert plain enums to enum class in EUF module

- Convert eq_status in euf::ac_plugin to enum class
- Convert undo_kind in euf::ac_plugin to enum class
- Convert undo_t in euf::arith_plugin to enum class
- Convert to_merge_t in euf::egraph to enum class
- Update all usage sites to use scoped enum syntax

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

* Convert more plain enums to enum class

- Convert state enum in substitution class
- Convert instruction enum in generic_model_converter class
- Convert eq_type enum in bit2int class
- Update all usage sites to use scoped enum syntax

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-01-11 17:44:59 -08:00
..
converters Convert internal class enums to enum class for type safety (#8158) 2026-01-11 17:44:59 -08:00
euf Convert internal class enums to enum class for type safety (#8158) 2026-01-11 17:44:59 -08:00
fpa fix #8097 2025-12-21 10:02:47 -08:00
macros Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
normal_forms fixing the order 2025-10-06 13:44:19 -07:00
pattern Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
proofs Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
rewriter Convert internal class enums to enum class for type safety (#8158) 2026-01-11 17:44:59 -08:00
simplifiers fix build warnings 2025-11-26 09:43:52 -08:00
sls check cancelation in invariant checker 2025-11-23 09:09:55 -08:00
substitution Convert internal class enums to enum class for type safety (#8158) 2026-01-11 17:44:59 -08:00
act_cache.cpp
act_cache.h
arith_decl_plugin.cpp fix #8024 2025-11-16 10:08:21 -08:00
arith_decl_plugin.h fix #8024 2025-11-16 10:08:21 -08:00
array_decl_plugin.cpp remove set cardinality operators from array theory. Make final-check use priority levels 2025-11-26 15:35:19 -08:00
array_decl_plugin.h remove set cardinality operators from array theory. Make final-check use priority levels 2025-11-26 15:35:19 -08:00
array_peq.cpp code simplification 2025-02-18 19:07:58 -08:00
array_peq.h code simplification 2025-02-18 19:07:58 -08:00
ast.cpp turn on ho-matcher for completion 2025-07-07 14:08:51 +02:00
ast.h Add [[nodiscard]] to AST factory functions and modernize iterator loops (#8143) 2026-01-11 09:58:25 -08:00
ast_ll_pp.cpp
ast_ll_pp.h remove '#include <iostream>' from headers and from unneeded places 2022-06-17 14:10:19 +01:00
ast_lt.cpp remove unnecessary parameter copies 2023-12-22 16:11:06 +00:00
ast_lt.h
ast_pp.h remove a few string copies 2023-12-20 16:55:09 +00:00
ast_pp_dot.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
ast_pp_dot.h
ast_pp_util.cpp fixes to mbqi in the new core based on #6575 2023-02-10 16:56:06 -08:00
ast_pp_util.h
ast_printer.cpp
ast_printer.h
ast_smt2_pp.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
ast_smt2_pp.h
ast_smt_pp.cpp fix #7331 2024-08-06 03:54:25 -07:00
ast_smt_pp.h
ast_trail.h remove default destructors 2024-10-02 22:20:12 +01:00
ast_translation.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
ast_translation.h
ast_util.cpp
ast_util.h
bv_decl_plugin.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
bv_decl_plugin.h fix #7572 and fix #7574 2025-03-07 10:46:29 -08:00
char_decl_plugin.cpp
char_decl_plugin.h
CMakeLists.txt QEL: Fast Approximated Quantifier Elimination (#6820) 2023-08-02 09:34:06 -07:00
cost_evaluator.cpp
cost_evaluator.h
datatype_decl_plugin.cpp fix build break introduced when adding support for polymorphic datatypes 2025-10-28 18:55:47 -07:00
datatype_decl_plugin.h Fix O(n²) performance issue in CLI datatype declaration processing (#7712) 2025-07-02 09:54:36 -07:00
decl_collector.cpp
decl_collector.h
display_dimacs.cpp
display_dimacs.h
dl_decl_plugin.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
dl_decl_plugin.h
expr2polynomial.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
expr2polynomial.h remove default destructors 2024-10-02 22:20:12 +01:00
expr2var.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
expr2var.h
expr_abstract.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
expr_abstract.h wip - throttle AC completion, enable congruences over bound bodies 2025-07-11 12:48:27 +02:00
expr_delta_pair.h
expr_functors.cpp
expr_functors.h
expr_map.cpp
expr_map.h
expr_stat.cpp
expr_stat.h
expr_substitution.cpp bugfix to elim_uncnstr to ensure nodes are created. Prepare smt_internalizer to replay unit literals 2024-12-04 15:32:15 -08:00
expr_substitution.h
for_each_ast.cpp
for_each_ast.h Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
for_each_expr.cpp remove unneeded iterator functions 2024-09-23 12:59:04 +01:00
for_each_expr.h remove unneeded iterator functions 2024-09-23 12:59:04 +01:00
format.cpp
format.h
fpa_decl_plugin.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
fpa_decl_plugin.h remove default destructors 2024-10-02 22:20:12 +01:00
func_decl_dependencies.cpp
func_decl_dependencies.h
has_free_vars.cpp fixup std-order / inv-order 2024-10-03 19:35:16 -07:00
has_free_vars.h
is_variable_test.h
justified_expr.h move from justified_expr to dependent_expr by aligning datatypes 2025-01-22 11:46:10 -08:00
macro_substitution.cpp
macro_substitution.h
num_occurs.cpp
num_occurs.h
occurs.cpp AIX compat (#8113) 2026-01-05 07:23:05 -08:00
occurs.h
pb_decl_plugin.cpp
pb_decl_plugin.h
polymorphism_inst.cpp fix #7049 2023-12-08 13:05:21 -08:00
polymorphism_inst.h
polymorphism_util.cpp remove unnecessary parameter copies 2023-12-22 16:11:06 +00:00
polymorphism_util.h
pp.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
pp.h
pp_params.pyg
quantifier_stat.cpp
quantifier_stat.h
recfun_decl_plugin.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
recfun_decl_plugin.h remove default destructors 2024-10-02 22:20:12 +01:00
recurse_expr.h
recurse_expr_def.h
reg_decl_plugins.cpp
reg_decl_plugins.h
scoped_proof.h
seq_decl_plugin.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
seq_decl_plugin.h Performance improvements for seq-sls (#7519) 2025-01-21 08:01:59 -08:00
shared_occs.cpp
shared_occs.h
special_relations_decl_plugin.cpp add EUF plugin framework. 2023-11-30 13:58:30 -08:00
special_relations_decl_plugin.h add EUF plugin framework. 2023-11-30 13:58:30 -08:00
static_features.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
static_features.h
used_symbols.h
used_vars.cpp
used_vars.h
value_generator.cpp
value_generator.h
well_sorted.cpp Centralize and document TRACE tags using X-macros (#7657) 2025-05-28 14:31:25 +01:00
well_sorted.h