41 #include <boost/iterator/transform_iterator.hpp>
42 #include <boost/range/empty.hpp>
83 auto to_constraint_ref = +[](
const Constraint::SharedPtr& constraint) ->
const Constraint&
97 UUID constraint_uuid = constraint->uuid();
106 auto is_constraint_added = [&constraint_uuid](
const Constraint::SharedPtr& added_constraint)
108 return constraint_uuid == added_constraint->uuid();
117 *added_constraints_iter = std::move(constraint);
125 auto is_constraint_added = [&constraint_uuid](
const Constraint::SharedPtr& added_constraint)
127 return constraint_uuid == added_constraint->uuid();
146 auto to_variable_ref = +[](
const Variable::SharedPtr& variable) ->
const Variable&
167 UUID variable_uuid = variable->uuid();
176 auto is_variable_added = [&variable_uuid](
const Variable::SharedPtr& added_variable)
178 return variable_uuid == added_variable->uuid();
187 *added_variables_iter = std::move(variable);
195 auto is_variable_added = [&variable_uuid](
const Variable::SharedPtr& added_variable)
197 return variable_uuid == added_variable->uuid();
239 stream <<
"Stamp: " <<
stamp_ <<
"\n";
240 stream <<
"Involved Timestamps:\n";
243 stream <<
" - " << involved_stamp <<
"\n";
245 stream <<
"Added Variables:\n";
248 stream <<
" - " << *added_variable <<
"\n";
250 stream <<
"Added Constraints:\n";
253 stream <<
" - " << *added_constraint <<
"\n";
255 stream <<
"Removed Variables:\n";
258 stream <<
" - " << removed_variable <<
"\n";
260 stream <<
"Removed Constraints:\n";
263 stream <<
" - " << removed_constraint <<
"\n";
269 return Transaction::make_unique(*
this);
294 transaction.
print(stream);