mirror of
https://github.com/Z3Prover/z3
synced 2025-04-23 09:05:31 +00:00
refactoring theory_str
This commit is contained in:
parent
7e3e434147
commit
725352234d
17 changed files with 87 additions and 390 deletions
|
@ -50,7 +50,6 @@ public:
|
|||
virtual array_util & get_arutil() = 0;
|
||||
virtual fpa_util & get_futil() = 0;
|
||||
virtual seq_util & get_sutil() = 0;
|
||||
virtual str_util & get_strutil() = 0;
|
||||
virtual datalog::dl_decl_util& get_dlutil() = 0;
|
||||
virtual bool uses(symbol const & s) const = 0;
|
||||
virtual format_ns::format * pp_fdecl(func_decl * f, unsigned & len);
|
||||
|
@ -77,17 +76,15 @@ class smt2_pp_environment_dbg : public smt2_pp_environment {
|
|||
array_util m_arutil;
|
||||
fpa_util m_futil;
|
||||
seq_util m_sutil;
|
||||
str_util m_strutil;
|
||||
datalog::dl_decl_util m_dlutil;
|
||||
public:
|
||||
smt2_pp_environment_dbg(ast_manager & m):m_manager(m), m_autil(m), m_bvutil(m), m_arutil(m), m_futil(m), m_sutil(m), m_strutil(m), m_dlutil(m) {}
|
||||
smt2_pp_environment_dbg(ast_manager & m):m_manager(m), m_autil(m), m_bvutil(m), m_arutil(m), m_futil(m), m_sutil(m), m_dlutil(m) {}
|
||||
virtual ast_manager & get_manager() const { return m_manager; }
|
||||
virtual arith_util & get_autil() { return m_autil; }
|
||||
virtual bv_util & get_bvutil() { return m_bvutil; }
|
||||
virtual seq_util & get_sutil() { return m_sutil; }
|
||||
virtual array_util & get_arutil() { return m_arutil; }
|
||||
virtual fpa_util & get_futil() { return m_futil; }
|
||||
virtual str_util & get_strutil() { return m_strutil; }
|
||||
virtual datalog::dl_decl_util& get_dlutil() { return m_dlutil; }
|
||||
virtual bool uses(symbol const & s) const { return false; }
|
||||
};
|
||||
|
|
|
@ -165,7 +165,6 @@ class smt_printer {
|
|||
bv_util m_bvutil;
|
||||
seq_util m_sutil;
|
||||
fpa_util m_futil;
|
||||
str_util m_strutil;
|
||||
family_id m_basic_fid;
|
||||
family_id m_bv_fid;
|
||||
family_id m_str_fid;
|
||||
|
@ -473,9 +472,6 @@ class smt_printer {
|
|||
m_out << ") bv1[1])";
|
||||
}
|
||||
}
|
||||
else if (m_strutil.is_string(n, &str)) {
|
||||
m_out << "\"" << str << "\"";
|
||||
}
|
||||
else if (m_manager.is_label(n, pos, names) && names.size() >= 1) {
|
||||
if (m_is_smt2) {
|
||||
m_out << "(! ";
|
||||
|
@ -839,7 +835,6 @@ public:
|
|||
m_bvutil(m),
|
||||
m_sutil(m),
|
||||
m_futil(m),
|
||||
m_strutil(m),
|
||||
m_logic(logic),
|
||||
m_AUFLIRA("AUFLIRA"),
|
||||
// It's much easier to read those testcases with that.
|
||||
|
|
|
@ -26,7 +26,6 @@ Revision History:
|
|||
#include"seq_decl_plugin.h"
|
||||
#include"pb_decl_plugin.h"
|
||||
#include"fpa_decl_plugin.h"
|
||||
#include"str_decl_plugin.h"
|
||||
|
||||
void reg_decl_plugins(ast_manager & m) {
|
||||
if (!m.get_plugin(m.mk_family_id(symbol("arith")))) {
|
||||
|
@ -53,7 +52,4 @@ void reg_decl_plugins(ast_manager & m) {
|
|||
if (!m.get_plugin(m.mk_family_id(symbol("pb")))) {
|
||||
m.register_plugin(symbol("pb"), alloc(pb_decl_plugin));
|
||||
}
|
||||
if (!m.get_plugin(m.mk_family_id(symbol("str")))) {
|
||||
m.register_plugin(symbol("str"), alloc(str_decl_plugin));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -17,6 +17,8 @@ Notes:
|
|||
|
||||
--*/
|
||||
|
||||
#if 0
|
||||
|
||||
#include"str_rewriter.h"
|
||||
#include"arith_decl_plugin.h"
|
||||
#include"ast_pp.h"
|
||||
|
@ -698,3 +700,4 @@ bool str_rewriter::reduce_eq(expr_ref_vector& ls, expr_ref_vector& rs, expr_ref_
|
|||
return true;
|
||||
}
|
||||
|
||||
#endif /* disable */
|
||||
|
|
|
@ -17,6 +17,8 @@ Notes:
|
|||
|
||||
--*/
|
||||
|
||||
#if 0
|
||||
|
||||
#include"str_decl_plugin.h"
|
||||
#include"arith_decl_plugin.h"
|
||||
#include"rewriter_types.h"
|
||||
|
@ -114,3 +116,5 @@ public:
|
|||
|
||||
bool matches(std::string input);
|
||||
};
|
||||
|
||||
#endif /* disable */
|
||||
|
|
|
@ -14,6 +14,9 @@ Author:
|
|||
Revision History:
|
||||
|
||||
--*/
|
||||
|
||||
#if 0
|
||||
|
||||
#include<sstream>
|
||||
#include"str_decl_plugin.h"
|
||||
#include"string_buffer.h"
|
||||
|
@ -494,3 +497,5 @@ std::string str_util::get_std_regex_str(expr * regex) {
|
|||
UNREACHABLE(); return "";
|
||||
}
|
||||
}
|
||||
|
||||
#endif /* disable */
|
||||
|
|
|
@ -14,6 +14,9 @@ Author:
|
|||
Revision History:
|
||||
|
||||
--*/
|
||||
|
||||
#if 0
|
||||
|
||||
#ifndef _STR_DECL_PLUGIN_H_
|
||||
#define _STR_DECL_PLUGIN_H_
|
||||
|
||||
|
@ -211,3 +214,5 @@ public:
|
|||
};
|
||||
|
||||
#endif /* _STR_DECL_PLUGIN_H_ */
|
||||
|
||||
#endif /* disable */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue