diff --git a/mk_make.py b/mk_make.py new file mode 100644 index 000000000..35c06b4c5 --- /dev/null +++ b/mk_make.py @@ -0,0 +1,161 @@ +import os +import glob + +BUILD_DIR='build-test' +SRC_DIR='src' +MODES=['Debug', 'Release'] +PLATFORMS=['Win32', 'x64'] +VS_COMMON_OPTIONS='WIN32;_WINDOWS;ASYNC_COMMANDS' +VS_DBG_OPTIONS='Z3DEBUG;_TRACE;_DEBUG' +VS_RELEASE_OPTIONS='NDEBUG;_EXTERNAL_RELEASE' + +def is_debug(mode): + return mode == 'Debug' + +def is_x64(platform): + return platform == 'x64' + +def mk_dir(d): + if not os.path.exists(d): + os.makedirs(d) + +# Initialization +mk_dir(BUILD_DIR) + +def module_src_dir(name): + return '%s%s%s' % (SRC_DIR, os.sep, name) + +def module_build_dir(name): + return '%s%s%s' % (BUILD_DIR, os.sep, name) + +def vs_header(f): + f.write( +'\n' +'\n') + +GUI = 0 +Name2GUI = {} + +def vs_project_configurations(f, name): + global GUI, Name2GUI + f.write(' \n') + for mode in MODES: + for platform in PLATFORMS: + f.write(' \n' % (mode, platform)) + f.write(' %s\n' % mode) + f.write(' %s\n' % platform) + f.write(' \n') + f.write(' \n') + + f.write(' \n') + f.write(' {00000000-0000-0000-000--%s}\n' % GUI) + f.write(' %s\n' % name) + f.write(' Win32Proj\n') + f.write(' \n') + f.write(' \n') + Name2GUI[name] = GUI + GUI = GUI + 1 + +def vs_lib_configurations(f, name): + for mode in MODES: + for platform in PLATFORMS: + f.write(' \n' % (mode, platform)) + f.write(' StaticLibrary\n') + f.write(' Unicode\n') + f.write(' false\n') + f.write(' \n') + + f.write(' \n') + f.write(' \n') + f.write(' \n') + f.write(' \n') + f.write(' \n') + f.write(' \n') + + f.write(' \n') + for mode in MODES: + for platform in PLATFORMS: + if is_x64(platform): + f.write(' $(SolutionDir)$(Platform)\$(Configuration)\\n' % + (mode, platform)) + else: + f.write(' $(SolutionDir)$(Configuration)\\n' % (mode, platform)) + for mode in MODES: + for platform in PLATFORMS: + f.write(' %s\n' % (mode, platform, name)) + f.write(' .lib\n' % (mode, platform)) + f.write(' \n') + +def vs_compilation_options(f, name, deps): + for mode in MODES: + for platform in PLATFORMS: + f.write(' \n' % (mode, platform)) + if is_x64(platform): + f.write(' \n') + f.write(' X64\n') + f.write(' \n') + f.write(' \n') + if is_debug(mode): + f.write(' Disabled\n') + else: + f.write(' Full\n') + options = VS_COMMON_OPTIONS + if is_debug(mode): + options = "%s;%s" % (options, VS_DBG_OPTIONS) + else: + options = "%s;%s" % (options, VS_RELEASE_OPTIONS) + if is_x64(platform): + options = "%s;_AMD64_" % options + f.write(' %s;%%(PreprocessorDefinitions)\n' % options) + if is_debug(mode): + f.write(' true\n') + f.write(' EnableFastChecks\n') + f.write(' Level3\n') + f.write(' MultiThreadedDebugDLL\n') + f.write(' true\n') + f.write(' ProgramDatabase\n') + f.write(' ') + f.write('..\..\src\%s' % name) + for dep in deps: + f.write(';..\..\src\%s' % dep) + f.write('\n') + f.write(' \n') + f.write(' \n') + f.write(' $(OutDir)%s.lib\n' % name) + f.write(' %(AdditionalLibraryDirectories)\n') + if is_x64(platform): + f.write(' MachineX64\n') + else: + f.write(' MachineX86\n') + f.write(' \n') + f.write(' \n') + +def add_vs_cpps(f, name): + f.write(' \n') + srcs = module_src_dir(name) + for cppfile in glob.glob(os.path.join(srcs, '*.cpp')): + f.write(' \n' % (os.sep, os.sep, cppfile)) + f.write(' \n') + +def vs_footer(f): + f.write( +' \n' +' \n' +' \n' +'\n') + +def add_lib(name, deps): + module_dir = module_build_dir(name) + mk_dir(module_dir) + + vs_proj = open('%s%s%s.vcxproj' % (module_dir, os.sep, name), 'w') + vs_header(vs_proj) + vs_project_configurations(vs_proj, name) + vs_lib_configurations(vs_proj, name) + vs_compilation_options(vs_proj, name, deps) + add_vs_cpps(vs_proj, name) + vs_footer(vs_proj) + +add_lib('util', []) +add_lib('polynomial', ['util']) +add_lib('ast', ['util', 'polynomial']) diff --git a/lib/arith_decl_plugin.cpp b/src/ast/arith_decl_plugin.cpp similarity index 100% rename from lib/arith_decl_plugin.cpp rename to src/ast/arith_decl_plugin.cpp diff --git a/lib/arith_decl_plugin.h b/src/ast/arith_decl_plugin.h similarity index 100% rename from lib/arith_decl_plugin.h rename to src/ast/arith_decl_plugin.h diff --git a/lib/array_decl_plugin.cpp b/src/ast/array_decl_plugin.cpp similarity index 100% rename from lib/array_decl_plugin.cpp rename to src/ast/array_decl_plugin.cpp diff --git a/lib/array_decl_plugin.h b/src/ast/array_decl_plugin.h similarity index 100% rename from lib/array_decl_plugin.h rename to src/ast/array_decl_plugin.h diff --git a/lib/ast.cpp b/src/ast/ast.cpp similarity index 100% rename from lib/ast.cpp rename to src/ast/ast.cpp diff --git a/lib/ast.h b/src/ast/ast.h similarity index 100% rename from lib/ast.h rename to src/ast/ast.h diff --git a/lib/ast_list.h b/src/ast/ast_list.h similarity index 100% rename from lib/ast_list.h rename to src/ast/ast_list.h diff --git a/lib/ast_ll_pp.cpp b/src/ast/ast_ll_pp.cpp similarity index 100% rename from lib/ast_ll_pp.cpp rename to src/ast/ast_ll_pp.cpp diff --git a/lib/ast_ll_pp.h b/src/ast/ast_ll_pp.h similarity index 100% rename from lib/ast_ll_pp.h rename to src/ast/ast_ll_pp.h diff --git a/lib/ast_pp.cpp b/src/ast/ast_pp.cpp similarity index 100% rename from lib/ast_pp.cpp rename to src/ast/ast_pp.cpp diff --git a/lib/ast_pp.h b/src/ast/ast_pp.h similarity index 100% rename from lib/ast_pp.h rename to src/ast/ast_pp.h diff --git a/lib/ast_smt2_pp.cpp b/src/ast/ast_smt2_pp.cpp similarity index 100% rename from lib/ast_smt2_pp.cpp rename to src/ast/ast_smt2_pp.cpp diff --git a/lib/ast_smt2_pp.h b/src/ast/ast_smt2_pp.h similarity index 100% rename from lib/ast_smt2_pp.h rename to src/ast/ast_smt2_pp.h diff --git a/lib/ast_util.cpp b/src/ast/ast_util.cpp similarity index 100% rename from lib/ast_util.cpp rename to src/ast/ast_util.cpp diff --git a/lib/ast_util.h b/src/ast/ast_util.h similarity index 100% rename from lib/ast_util.h rename to src/ast/ast_util.h diff --git a/lib/bv_decl_plugin.cpp b/src/ast/bv_decl_plugin.cpp similarity index 100% rename from lib/bv_decl_plugin.cpp rename to src/ast/bv_decl_plugin.cpp diff --git a/lib/bv_decl_plugin.h b/src/ast/bv_decl_plugin.h similarity index 100% rename from lib/bv_decl_plugin.h rename to src/ast/bv_decl_plugin.h diff --git a/lib/datatype_decl_plugin.cpp b/src/ast/datatype_decl_plugin.cpp similarity index 100% rename from lib/datatype_decl_plugin.cpp rename to src/ast/datatype_decl_plugin.cpp diff --git a/lib/datatype_decl_plugin.h b/src/ast/datatype_decl_plugin.h similarity index 100% rename from lib/datatype_decl_plugin.h rename to src/ast/datatype_decl_plugin.h diff --git a/lib/dl_decl_plugin.cpp b/src/ast/dl_decl_plugin.cpp similarity index 100% rename from lib/dl_decl_plugin.cpp rename to src/ast/dl_decl_plugin.cpp diff --git a/lib/dl_decl_plugin.h b/src/ast/dl_decl_plugin.h similarity index 100% rename from lib/dl_decl_plugin.h rename to src/ast/dl_decl_plugin.h diff --git a/lib/float_decl_plugin.cpp b/src/ast/float_decl_plugin.cpp similarity index 100% rename from lib/float_decl_plugin.cpp rename to src/ast/float_decl_plugin.cpp diff --git a/lib/float_decl_plugin.h b/src/ast/float_decl_plugin.h similarity index 100% rename from lib/float_decl_plugin.h rename to src/ast/float_decl_plugin.h diff --git a/lib/for_each_ast.h b/src/ast/for_each_ast.h similarity index 100% rename from lib/for_each_ast.h rename to src/ast/for_each_ast.h diff --git a/lib/format.cpp b/src/ast/format.cpp similarity index 100% rename from lib/format.cpp rename to src/ast/format.cpp diff --git a/lib/format.h b/src/ast/format.h similarity index 100% rename from lib/format.h rename to src/ast/format.h diff --git a/lib/pp.cpp b/src/ast/pp.cpp similarity index 100% rename from lib/pp.cpp rename to src/ast/pp.cpp diff --git a/lib/pp.h b/src/ast/pp.h similarity index 100% rename from lib/pp.h rename to src/ast/pp.h diff --git a/lib/pp_params.cpp b/src/ast/pp_params.cpp similarity index 100% rename from lib/pp_params.cpp rename to src/ast/pp_params.cpp diff --git a/lib/pp_params.h b/src/ast/pp_params.h similarity index 100% rename from lib/pp_params.h rename to src/ast/pp_params.h diff --git a/lib/recurse_expr.h b/src/ast/recurse_expr.h similarity index 100% rename from lib/recurse_expr.h rename to src/ast/recurse_expr.h diff --git a/lib/recurse_expr_def.h b/src/ast/recurse_expr_def.h similarity index 100% rename from lib/recurse_expr_def.h rename to src/ast/recurse_expr_def.h diff --git a/lib/seq_decl_plugin.cpp b/src/ast/seq_decl_plugin.cpp similarity index 100% rename from lib/seq_decl_plugin.cpp rename to src/ast/seq_decl_plugin.cpp diff --git a/lib/seq_decl_plugin.h b/src/ast/seq_decl_plugin.h similarity index 100% rename from lib/seq_decl_plugin.h rename to src/ast/seq_decl_plugin.h diff --git a/lib/shared_occs.cpp b/src/ast/shared_occs.cpp similarity index 100% rename from lib/shared_occs.cpp rename to src/ast/shared_occs.cpp diff --git a/lib/shared_occs.h b/src/ast/shared_occs.h similarity index 100% rename from lib/shared_occs.h rename to src/ast/shared_occs.h diff --git a/lib/algebraic_numbers.cpp b/src/polynomial/algebraic_numbers.cpp similarity index 100% rename from lib/algebraic_numbers.cpp rename to src/polynomial/algebraic_numbers.cpp diff --git a/lib/algebraic_numbers.h b/src/polynomial/algebraic_numbers.h similarity index 100% rename from lib/algebraic_numbers.h rename to src/polynomial/algebraic_numbers.h diff --git a/lib/linear_eq_solver.h b/src/polynomial/linear_eq_solver.h similarity index 100% rename from lib/linear_eq_solver.h rename to src/polynomial/linear_eq_solver.h diff --git a/lib/polynomial.cpp b/src/polynomial/polynomial.cpp similarity index 100% rename from lib/polynomial.cpp rename to src/polynomial/polynomial.cpp diff --git a/lib/polynomial.h b/src/polynomial/polynomial.h similarity index 100% rename from lib/polynomial.h rename to src/polynomial/polynomial.h diff --git a/lib/polynomial_cache.cpp b/src/polynomial/polynomial_cache.cpp similarity index 100% rename from lib/polynomial_cache.cpp rename to src/polynomial/polynomial_cache.cpp diff --git a/lib/polynomial_cache.h b/src/polynomial/polynomial_cache.h similarity index 100% rename from lib/polynomial_cache.h rename to src/polynomial/polynomial_cache.h diff --git a/lib/polynomial_factorization.cpp b/src/polynomial/polynomial_factorization.cpp similarity index 100% rename from lib/polynomial_factorization.cpp rename to src/polynomial/polynomial_factorization.cpp diff --git a/lib/polynomial_factorization.h b/src/polynomial/polynomial_factorization.h similarity index 100% rename from lib/polynomial_factorization.h rename to src/polynomial/polynomial_factorization.h diff --git a/lib/polynomial_primes.h b/src/polynomial/polynomial_primes.h similarity index 100% rename from lib/polynomial_primes.h rename to src/polynomial/polynomial_primes.h diff --git a/lib/polynomial_var2value.h b/src/polynomial/polynomial_var2value.h similarity index 100% rename from lib/polynomial_var2value.h rename to src/polynomial/polynomial_var2value.h diff --git a/lib/sexpr2upolynomial.cpp b/src/polynomial/sexpr2upolynomial.cpp similarity index 100% rename from lib/sexpr2upolynomial.cpp rename to src/polynomial/sexpr2upolynomial.cpp diff --git a/lib/sexpr2upolynomial.h b/src/polynomial/sexpr2upolynomial.h similarity index 100% rename from lib/sexpr2upolynomial.h rename to src/polynomial/sexpr2upolynomial.h diff --git a/lib/upolynomial.cpp b/src/polynomial/upolynomial.cpp similarity index 100% rename from lib/upolynomial.cpp rename to src/polynomial/upolynomial.cpp diff --git a/lib/upolynomial.h b/src/polynomial/upolynomial.h similarity index 100% rename from lib/upolynomial.h rename to src/polynomial/upolynomial.h diff --git a/lib/upolynomial_factorization.cpp b/src/polynomial/upolynomial_factorization.cpp similarity index 100% rename from lib/upolynomial_factorization.cpp rename to src/polynomial/upolynomial_factorization.cpp diff --git a/lib/upolynomial_factorization.h b/src/polynomial/upolynomial_factorization.h similarity index 100% rename from lib/upolynomial_factorization.h rename to src/polynomial/upolynomial_factorization.h diff --git a/lib/upolynomial_factorization_int.h b/src/polynomial/upolynomial_factorization_int.h similarity index 100% rename from lib/upolynomial_factorization_int.h rename to src/polynomial/upolynomial_factorization_int.h diff --git a/lib/cmd_context_types.cpp b/src/util/cmd_context_types.cpp similarity index 100% rename from lib/cmd_context_types.cpp rename to src/util/cmd_context_types.cpp diff --git a/lib/cmd_context_types.h b/src/util/cmd_context_types.h similarity index 100% rename from lib/cmd_context_types.h rename to src/util/cmd_context_types.h diff --git a/lib/cooperate.cpp b/src/util/cooperate.cpp similarity index 100% rename from lib/cooperate.cpp rename to src/util/cooperate.cpp diff --git a/lib/cooperate.h b/src/util/cooperate.h similarity index 100% rename from lib/cooperate.h rename to src/util/cooperate.h diff --git a/lib/error_codes.h b/src/util/error_codes.h similarity index 100% rename from lib/error_codes.h rename to src/util/error_codes.h diff --git a/src/util/mpq_inf.h b/src/util/mpq_inf.h index 008333b0b..217b58567 100644 --- a/src/util/mpq_inf.h +++ b/src/util/mpq_inf.h @@ -21,7 +21,6 @@ Revision History: #include"mpq.h" #include"hash.h" -#include"params.h" typedef std::pair mpq_inf; @@ -32,12 +31,12 @@ class mpq_inf_manager { public: typedef mpq_inf numeral; - mpq_inf_manager(mpq_manager & _m, params_ref const & p = params_ref()):m(_m) { - updt_params(p); + mpq_inf_manager(mpq_manager & _m, double inf = 0.0001):m(_m) { + set_inf(inf); } - void updt_params(params_ref const & p) { - m_inf = p.get_double(":infinitesimal-as-double", 0.00001); + void set_inf(double inf) { + m_inf = inf; } enum inf_kind { NEG=-1, ZERO, POS }; diff --git a/lib/params.cpp b/src/util/params.cpp similarity index 80% rename from lib/params.cpp rename to src/util/params.cpp index bcb3ce078..ae7f0c830 100644 --- a/lib/params.cpp +++ b/src/util/params.cpp @@ -17,7 +17,6 @@ Notes: --*/ #include"params.h" -#include"ast.h" #include"rational.h" #include"symbol.h" #include"dictionary.h" @@ -158,11 +157,9 @@ class params { char const * m_str_value; char const * m_sym_value; rational * m_rat_value; - ast * m_ast_value; }; }; typedef std::pair entry; - ast_manager * m_manager; svector m_entries; unsigned m_ref_count; @@ -170,7 +167,7 @@ class params { void del_values(); public: - params():m_manager(0), m_ref_count(0) {} + params():m_ref_count(0) {} ~params() { reset(); } @@ -178,8 +175,6 @@ public: void inc_ref() { m_ref_count++; } void dec_ref() { SASSERT(m_ref_count > 0); m_ref_count--; if (m_ref_count == 0) dealloc(this); } - void set_manager(ast_manager & m); - bool empty() const { return m_entries.empty(); } bool contains(symbol const & k) const; bool contains(char const * k) const; @@ -213,12 +208,6 @@ public: rational get_rat(char const * k, rational const & _default) const; symbol get_sym(symbol const & k, symbol const & _default) const; symbol get_sym(char const * k, symbol const & _default) const; - expr * get_expr(symbol const & k, expr * _default) const; - expr * get_expr(char const * k, expr * _default) const; - func_decl * get_func_decl(symbol const & k, func_decl * _default) const; - func_decl * get_func_decl(char const * k, func_decl * _default) const; - sort * get_sort(symbol const & k, sort * _default) const; - sort * get_sort(char const * k, sort * _default) const; // setters void set_bool(symbol const & k, bool v); @@ -233,12 +222,6 @@ public: void set_rat(char const * k, rational const & v); void set_sym(symbol const & k, symbol const & v); void set_sym(char const * k, symbol const & v); - void set_expr(symbol const & k, expr * v); - void set_expr(char const * k, expr * v); - void set_func_decl(symbol const & k, func_decl * v); - void set_func_decl(char const * k, func_decl * v); - void set_sort(symbol const & k, sort * v); - void set_sort(char const * k, sort * v); void display(std::ostream & out) const { out << "(params"; @@ -265,11 +248,6 @@ public: case CPK_STRING: out << " " << it->second.m_str_value; break; - case CPK_EXPR: - case CPK_FUNC_DECL: - case CPK_SORT: - out << " #" << it->second.m_ast_value->get_id(); - break; default: UNREACHABLE(); break; @@ -344,15 +322,6 @@ void params_ref::copy_core(params const * src) { case CPK_STRING: m_params->set_str(it->first, it->second.m_str_value); break; - case CPK_EXPR: - m_params->set_expr(it->first, static_cast(it->second.m_ast_value)); - break; - case CPK_FUNC_DECL: - m_params->set_func_decl(it->first, static_cast(it->second.m_ast_value)); - break; - case CPK_SORT: - m_params->set_sort(it->first, static_cast(it->second.m_ast_value)); - break; default: UNREACHABLE(); break; @@ -369,7 +338,6 @@ void params_ref::init() { params * old = m_params; m_params = alloc(params); m_params->inc_ref(); - m_params->m_manager = old->m_manager; copy_core(old); old->dec_ref(); } @@ -385,12 +353,6 @@ double params_ref::get_double(symbol const & k, double _default) const { return double params_ref::get_double(char const * k, double _default) const { return m_params ? m_params->get_double(k, _default) : _default; } char const * params_ref::get_str(symbol const & k, char const * _default) const { return m_params ? m_params->get_str(k, _default) : _default; } char const * params_ref::get_str(char const * k, char const * _default) const { return m_params ? m_params->get_str(k, _default) : _default; } -expr * params_ref::get_expr(symbol const & k, expr * _default) const { return m_params ? m_params->get_expr(k, _default) : _default; } -expr * params_ref::get_expr(char const * k, expr * _default) const { return m_params ? m_params->get_expr(k, _default) : _default; } -func_decl * params_ref::get_func_decl(symbol const & k, func_decl * _default) const { return m_params ? m_params->get_func_decl(k, _default) : _default; } -func_decl * params_ref::get_func_decl(char const * k, func_decl * _default) const { return m_params ? m_params->get_func_decl(k, _default) : _default; } -sort * params_ref::get_sort(symbol const & k, sort * _default) const { return m_params ? m_params->get_sort(k, _default) : _default; } -sort * params_ref::get_sort(char const * k, sort * _default) const { return m_params ? m_params->get_sort(k, _default) : _default; } rational params_ref::get_rat(symbol const & k, rational const & _default) const { return m_params ? m_params->get_rat(k, _default) : _default; @@ -408,11 +370,6 @@ symbol params_ref::get_sym(char const * k, symbol const & _default) const { return m_params ? m_params->get_sym(k, _default) : _default; } -void params_ref::set_manager(ast_manager & m) { - init(); - m_params->set_manager(m); -} - bool params_ref::empty() const { if (!m_params) return true; @@ -506,35 +463,6 @@ void params_ref::set_sym(char const * k, symbol const & v) { m_params->set_sym(k, v); } -void params_ref::set_expr(symbol const & k, expr * v) { - init(); - m_params->set_expr(k, v); -} - -void params_ref::set_expr(char const * k, expr * v) { - init(); - m_params->set_expr(k, v); -} - -void params_ref::set_func_decl(symbol const & k, func_decl * v) { - init(); - m_params->set_func_decl(k, v); -} - -void params_ref::set_func_decl(char const * k, func_decl * v) { - init(); - m_params->set_func_decl(k, v); -} - -void params_ref::set_sort(symbol const & k, sort * v) { - init(); - m_params->set_sort(k, v); -} - -void params_ref::set_sort(char const * k, sort * v) { - init(); - m_params->set_sort(k, v); -} void params::del_value(entry & e) { switch (e.second.m_kind) { @@ -542,21 +470,11 @@ void params::del_value(entry & e) { if (e.second.m_kind == CPK_NUMERAL) dealloc(e.second.m_rat_value); break; - case CPK_EXPR: - case CPK_SORT: - case CPK_FUNC_DECL: - SASSERT(m_manager); - m_manager->dec_ref(e.second.m_ast_value); - return; default: return; } } -void params::set_manager(ast_manager & m) { - m_manager = &m; -} - #define TRAVERSE_ENTRIES(CODE) { \ svector::iterator it = m_entries.begin(); \ svector::iterator end = m_entries.end(); \ @@ -696,30 +614,6 @@ symbol params::get_sym(char const * k, symbol const & _default) const { GET_VALUE(return symbol::mk_symbol_from_c_ptr(it->second.m_sym_value);, CPK_SYMBOL); } -expr * params::get_expr(symbol const & k, expr * _default) const { - GET_VALUE(return static_cast(it->second.m_ast_value);, CPK_EXPR); -} - -expr * params::get_expr(char const * k, expr * _default) const { - GET_VALUE(return static_cast(it->second.m_ast_value);, CPK_EXPR); -} - -func_decl * params::get_func_decl(symbol const & k, func_decl * _default) const { - GET_VALUE(return static_cast(it->second.m_ast_value);, CPK_FUNC_DECL); -} - -func_decl * params::get_func_decl(char const * k, func_decl * _default) const { - GET_VALUE(return static_cast(it->second.m_ast_value);, CPK_FUNC_DECL); -} - -sort * params::get_sort(symbol const & k, sort * _default) const { - GET_VALUE(return static_cast(it->second.m_ast_value);, CPK_SORT); -} - -sort * params::get_sort(char const * k, sort * _default) const { - GET_VALUE(return static_cast(it->second.m_ast_value);, CPK_SORT); -} - #define SET_VALUE(MATCH_CODE, ADD_CODE) { \ TRAVERSE_ENTRIES(if (it->first == k) { \ MATCH_CODE \ @@ -820,44 +714,3 @@ void params::set_sym(char const * k, symbol const & v) { SET_SYM_VALUE(); } -#define SET_AST_VALUE(KIND) { \ - SASSERT(m_manager); \ - m_manager->inc_ref(v); \ - SET_VALUE({ \ - del_value(*it); \ - it->second.m_kind = KIND; \ - it->second.m_ast_value = v; \ - }, \ - { \ - entry new_entry; \ - new_entry.first = symbol(k); \ - new_entry.second.m_kind = KIND; \ - new_entry.second.m_ast_value = v; \ - m_entries.push_back(new_entry); \ - })} - - -void params::set_expr(symbol const & k, expr * v) { - SET_AST_VALUE(CPK_EXPR); -} - -void params::set_expr(char const * k, expr * v) { - SET_AST_VALUE(CPK_EXPR); -} - -void params::set_func_decl(symbol const & k, func_decl * v) { - SET_AST_VALUE(CPK_FUNC_DECL); -} - -void params::set_func_decl(char const * k, func_decl * v) { - SET_AST_VALUE(CPK_FUNC_DECL); -} - -void params::set_sort(symbol const & k, sort * v) { - SET_AST_VALUE(CPK_SORT); -} - -void params::set_sort(char const * k, sort * v) { - SET_AST_VALUE(CPK_SORT); -} - diff --git a/lib/params.h b/src/util/params.h similarity index 81% rename from lib/params.h rename to src/util/params.h index f2a5e4da8..66c4e7c7a 100644 --- a/lib/params.h +++ b/src/util/params.h @@ -21,8 +21,6 @@ Notes: #include"cmd_context_types.h" #include"vector.h" -class ast; -class ast_manager; typedef cmd_arg_kind param_kind; @@ -56,14 +54,6 @@ public: rational get_rat(char const * k, rational const & _default) const; symbol get_sym(symbol const & k, symbol const & _default) const; symbol get_sym(char const * k, symbol const & _default) const; - expr * get_expr(symbol const & k, expr * _default) const; - expr * get_expr(char const * k, expr * _default) const; - func_decl * get_func_decl(symbol const & k, func_decl * _default) const; - func_decl * get_func_decl(char const * k, func_decl * _default) const; - sort * get_sort(symbol const & k, sort * _default) const; - sort * get_sort(char const * k, sort * _default) const; - - void set_manager(ast_manager & m); bool empty() const; bool contains(symbol const & k) const; @@ -85,12 +75,6 @@ public: void set_rat(char const * k, rational const & v); void set_sym(symbol const & k, symbol const & v); void set_sym(char const * k, symbol const & v); - void set_expr(symbol const & k, expr * v); - void set_expr(char const * k, expr * v); - void set_func_decl(symbol const & k, func_decl * v); - void set_func_decl(char const * k, func_decl * v); - void set_sort(symbol const & k, sort * v); - void set_sort(char const * k, sort * v); void display(std::ostream & out) const; diff --git a/lib/skip_list_base.h b/src/util/skip_list_base.h similarity index 100% rename from lib/skip_list_base.h rename to src/util/skip_list_base.h diff --git a/src/util/statistics.cpp b/src/util/statistics.cpp index 6b5d396f8..24d17ddfa 100644 --- a/src/util/statistics.cpp +++ b/src/util/statistics.cpp @@ -20,7 +20,7 @@ Notes: #include"map.h" #include"str_hashtable.h" #include"buffer.h" -#include"ast_smt2_pp.h" +#include"smt2_util.h" #include void statistics::update(char const * key, unsigned inc) { diff --git a/lib/z3_exception.cpp b/src/util/z3_exception.cpp similarity index 100% rename from lib/z3_exception.cpp rename to src/util/z3_exception.cpp diff --git a/lib/z3_exception.h b/src/util/z3_exception.h similarity index 100% rename from lib/z3_exception.h rename to src/util/z3_exception.h diff --git a/lib/z3_omp.h b/src/util/z3_omp.h similarity index 100% rename from lib/z3_omp.h rename to src/util/z3_omp.h