@@ -122,19 +122,25 @@ optionalt<std::vector<mp_integer>> eval_string(
122
122
return result;
123
123
}
124
124
125
- array_string_exprt
126
- make_string (const std::vector<mp_integer> &array, const array_typet &array_type)
125
+ template <typename Iter>
126
+ static array_string_exprt
127
+ make_string (Iter begin, Iter end, const array_typet &array_type)
127
128
{
128
129
const typet &char_type = array_type.subtype ();
129
130
array_exprt array_expr (array_type);
130
131
const auto &insert = std::back_inserter (array_expr.operands ());
131
- std::transform (
132
- array.begin (), array.end (), insert, [&](const mp_integer &i) { // NOLINT
133
- return from_integer (i, char_type);
134
- });
132
+ std::transform (begin, end, insert, [&](const mp_integer &i) {
133
+ return from_integer (i, char_type);
134
+ });
135
135
return to_array_string_expr (array_expr);
136
136
}
137
137
138
+ static array_string_exprt
139
+ make_string (const std::vector<mp_integer> &array, const array_typet &array_type)
140
+ {
141
+ return make_string (array.begin (), array.end (), array_type);
142
+ }
143
+
138
144
std::vector<mp_integer> string_concatenation_builtin_functiont::eval (
139
145
const std::vector<mp_integer> &input1_value,
140
146
const std::vector<mp_integer> &input2_value,
0 commit comments