mirror of
https://github.com/Z3Prover/z3
synced 2025-04-23 09:05:31 +00:00
remove a few string copies
This commit is contained in:
parent
db5a1a7604
commit
b2d5c24c1d
18 changed files with 39 additions and 80 deletions
|
@ -146,8 +146,7 @@ extern "C" {
|
|||
ast_manager& m = mk_c(c)->m();
|
||||
recfun::decl::plugin& p = mk_c(c)->recfun().get_plugin();
|
||||
if (!p.has_def(d)) {
|
||||
std::string msg = "function " + mk_pp(d, m) + " needs to be declared using rec_func_decl";
|
||||
SET_ERROR_CODE(Z3_INVALID_ARG, msg.c_str());
|
||||
SET_ERROR_CODE(Z3_INVALID_ARG, "function " + mk_pp(d, m) + " needs to be declared using rec_func_decl");
|
||||
return;
|
||||
}
|
||||
expr_ref abs_body(m);
|
||||
|
@ -168,8 +167,7 @@ extern "C" {
|
|||
return;
|
||||
}
|
||||
if (!pd.get_def()->get_cases().empty()) {
|
||||
std::string msg = "function " + mk_pp(d, m) + " has already been given a definition";
|
||||
SET_ERROR_CODE(Z3_INVALID_ARG, msg.c_str());
|
||||
SET_ERROR_CODE(Z3_INVALID_ARG, "function " + mk_pp(d, m) + " has already been given a definition");
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
|
@ -160,8 +160,8 @@ extern "C" {
|
|||
for (; it != end; ++it) {
|
||||
buffer << "\n (" << mk_ismt2_pp(it->m_key, mng, 3) << "\n " << mk_ismt2_pp(it->m_value, mng, 3) << ")";
|
||||
}
|
||||
buffer << ")";
|
||||
return mk_c(c)->mk_external_string(buffer.str());
|
||||
buffer << ')';
|
||||
return mk_c(c)->mk_external_string(std::move(buffer).str());
|
||||
Z3_CATCH_RETURN(nullptr);
|
||||
}
|
||||
|
||||
|
|
|
@ -338,12 +338,12 @@ namespace api {
|
|||
std::ostringstream buffer;
|
||||
app * a = to_app(n);
|
||||
buffer << mk_pp(a->get_decl(), m()) << " applied to: ";
|
||||
if (a->get_num_args() > 1) buffer << "\n";
|
||||
if (a->get_num_args() > 1) buffer << '\n';
|
||||
for (unsigned i = 0; i < a->get_num_args(); ++i) {
|
||||
buffer << mk_bounded_pp(a->get_arg(i), m(), 3) << " of sort ";
|
||||
buffer << mk_pp(a->get_arg(i)->get_sort(), m()) << "\n";
|
||||
buffer << mk_pp(a->get_arg(i)->get_sort(), m()) << '\n';
|
||||
}
|
||||
auto str = buffer.str();
|
||||
auto str = std::move(buffer).str();
|
||||
warning_msg("%s", str.c_str());
|
||||
break;
|
||||
}
|
||||
|
|
|
@ -1022,7 +1022,7 @@ extern "C" {
|
|||
if (mpfm.is_inf(val)) mpqm.set(q, 0);
|
||||
std::stringstream ss;
|
||||
mpqm.display_decimal(ss, q, sbits);
|
||||
return mk_c(c)->mk_external_string(ss.str());
|
||||
return mk_c(c)->mk_external_string(std::move(ss).str());
|
||||
Z3_CATCH_RETURN("");
|
||||
}
|
||||
|
||||
|
@ -1100,7 +1100,7 @@ extern "C" {
|
|||
}
|
||||
std::stringstream ss;
|
||||
ss << exp;
|
||||
return mk_c(c)->mk_external_string(ss.str());
|
||||
return mk_c(c)->mk_external_string(std::move(ss).str());
|
||||
Z3_CATCH_RETURN("");
|
||||
}
|
||||
|
||||
|
|
|
@ -185,7 +185,7 @@ extern "C" {
|
|||
std::ostringstream buffer;
|
||||
to_goal_ref(g)->display(buffer);
|
||||
// Hack for removing the trailing '\n'
|
||||
std::string result = buffer.str();
|
||||
std::string result = std::move(buffer).str();
|
||||
SASSERT(result.size() > 0);
|
||||
result.resize(result.size()-1);
|
||||
return mk_c(c)->mk_external_string(std::move(result));
|
||||
|
@ -203,7 +203,7 @@ extern "C" {
|
|||
}
|
||||
to_goal_ref(g)->display_dimacs(buffer, include_names);
|
||||
// Hack for removing the trailing '\n'
|
||||
std::string result = buffer.str();
|
||||
std::string result = std::move(buffer).str();
|
||||
SASSERT(result.size() > 0);
|
||||
result.resize(result.size()-1);
|
||||
return mk_c(c)->mk_external_string(std::move(result));
|
||||
|
|
|
@ -432,14 +432,14 @@ extern "C" {
|
|||
if (mk_c(c)->get_print_mode() == Z3_PRINT_SMTLIB2_COMPLIANT) {
|
||||
model_smt2_pp(buffer, mk_c(c)->m(), *(to_model_ref(m)), 0);
|
||||
// Hack for removing the trailing '\n'
|
||||
result = buffer.str();
|
||||
result = std::move(buffer).str();
|
||||
if (!result.empty())
|
||||
result.resize(result.size()-1);
|
||||
}
|
||||
else {
|
||||
model_params p;
|
||||
model_v2_pp(buffer, *(to_model_ref(m)), p.partial());
|
||||
result = buffer.str();
|
||||
result = std::move(buffer).str();
|
||||
}
|
||||
return mk_c(c)->mk_external_string(std::move(result));
|
||||
Z3_CATCH_RETURN(nullptr);
|
||||
|
|
|
@ -189,7 +189,7 @@ extern "C" {
|
|||
if (ok && r.is_int() && !r.is_neg()) {
|
||||
std::stringstream strm;
|
||||
r.display_bin(strm, r.get_num_bits());
|
||||
return mk_c(c)->mk_external_string(strm.str());
|
||||
return mk_c(c)->mk_external_string(std::move(strm).str());
|
||||
}
|
||||
else {
|
||||
SET_ERROR_CODE(Z3_INVALID_ARG, nullptr);
|
||||
|
@ -237,7 +237,7 @@ extern "C" {
|
|||
else if (mk_c(c)->fpautil().is_numeral(to_expr(a), tmp)) {
|
||||
std::ostringstream buffer;
|
||||
fu.fm().display_smt2(buffer, tmp, false);
|
||||
return mk_c(c)->mk_external_string(buffer.str());
|
||||
return mk_c(c)->mk_external_string(std::move(buffer).str());
|
||||
}
|
||||
else {
|
||||
SET_ERROR_CODE(Z3_INVALID_ARG, nullptr);
|
||||
|
@ -288,21 +288,21 @@ extern "C" {
|
|||
if (u.is_numeral(e, r) && !r.is_int()) {
|
||||
std::ostringstream buffer;
|
||||
r.display_decimal(buffer, precision);
|
||||
return mk_c(c)->mk_external_string(buffer.str());
|
||||
return mk_c(c)->mk_external_string(std::move(buffer).str());
|
||||
}
|
||||
if (u.is_irrational_algebraic_numeral(e)) {
|
||||
algebraic_numbers::anum const & n = u.to_irrational_algebraic_numeral(e);
|
||||
algebraic_numbers::manager & am = u.am();
|
||||
std::ostringstream buffer;
|
||||
am.display_decimal(buffer, n, precision);
|
||||
return mk_c(c)->mk_external_string(buffer.str());
|
||||
return mk_c(c)->mk_external_string(std::move(buffer).str());
|
||||
}
|
||||
else if (mk_c(c)->fpautil().is_rm_numeral(to_expr(a), rm))
|
||||
return Z3_get_numeral_string(c, a);
|
||||
else if (mk_c(c)->fpautil().is_numeral(to_expr(a), ftmp)) {
|
||||
std::ostringstream buffer;
|
||||
fu.fm().display_decimal(buffer, ftmp, 12);
|
||||
return mk_c(c)->mk_external_string(buffer.str());
|
||||
return mk_c(c)->mk_external_string(std::move(buffer).str());
|
||||
}
|
||||
else if (Z3_get_numeral_rational(c, a, r)) {
|
||||
return mk_c(c)->mk_external_string(r.to_string());
|
||||
|
|
|
@ -170,8 +170,8 @@ extern "C" {
|
|||
if (g_is_threaded || g_thread_id != std::this_thread::get_id()) {
|
||||
g_is_threaded = true;
|
||||
std::ostringstream strm;
|
||||
strm << smt2log << "-" << std::this_thread::get_id();
|
||||
smt2log = symbol(strm.str());
|
||||
strm << smt2log << '-' << std::this_thread::get_id();
|
||||
smt2log = symbol(std::move(strm).str());
|
||||
}
|
||||
to_solver(s)->m_pp = alloc(solver2smt2_pp, mk_c(c)->m(), smt2log.str());
|
||||
}
|
||||
|
@ -208,7 +208,7 @@ extern "C" {
|
|||
if (!smt_logics::supported_logic(to_symbol(logic))) {
|
||||
std::ostringstream strm;
|
||||
strm << "logic '" << to_symbol(logic) << "' is not recognized";
|
||||
SET_ERROR_CODE(Z3_INVALID_ARG, strm.str());
|
||||
SET_ERROR_CODE(Z3_INVALID_ARG, std::move(strm).str());
|
||||
RETURN_Z3(nullptr);
|
||||
}
|
||||
else {
|
||||
|
@ -306,7 +306,7 @@ extern "C" {
|
|||
|
||||
if (!parse_smt2_commands(*ctx.get(), is)) {
|
||||
ctx = nullptr;
|
||||
SET_ERROR_CODE(Z3_PARSER_ERROR, errstrm.str());
|
||||
SET_ERROR_CODE(Z3_PARSER_ERROR, std::move(errstrm).str());
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -333,7 +333,7 @@ extern "C" {
|
|||
std::stringstream err;
|
||||
sat::solver solver(to_solver_ref(s)->get_params(), m.limit());
|
||||
if (!parse_dimacs(is, err, solver)) {
|
||||
SET_ERROR_CODE(Z3_PARSER_ERROR, err.str());
|
||||
SET_ERROR_CODE(Z3_PARSER_ERROR, std::move(err).str());
|
||||
return;
|
||||
}
|
||||
sat2goal s2g;
|
||||
|
@ -400,7 +400,7 @@ extern "C" {
|
|||
if (!initialized)
|
||||
to_solver(s)->m_solver = nullptr;
|
||||
descrs.display(buffer);
|
||||
return mk_c(c)->mk_external_string(buffer.str());
|
||||
return mk_c(c)->mk_external_string(std::move(buffer).str());
|
||||
Z3_CATCH_RETURN("");
|
||||
}
|
||||
|
||||
|
@ -799,7 +799,7 @@ extern "C" {
|
|||
init_solver(c, s);
|
||||
std::ostringstream buffer;
|
||||
to_solver_ref(s)->display(buffer);
|
||||
return mk_c(c)->mk_external_string(buffer.str());
|
||||
return mk_c(c)->mk_external_string(std::move(buffer).str());
|
||||
Z3_CATCH_RETURN("");
|
||||
}
|
||||
|
||||
|
@ -810,7 +810,7 @@ extern "C" {
|
|||
init_solver(c, s);
|
||||
std::ostringstream buffer;
|
||||
to_solver_ref(s)->display_dimacs(buffer, include_names);
|
||||
return mk_c(c)->mk_external_string(buffer.str());
|
||||
return mk_c(c)->mk_external_string(std::move(buffer).str());
|
||||
Z3_CATCH_RETURN("");
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue