46 template <
class t_Left,
class t_Right>
47 void visit(
const t_Left &left, t_Right &right,
const std::string &name,
const Parameters ¶m)
54 catch (std::exception &e)
61 template <
class t_Left,
class t_Right>
73 catch (
const std::exception &e)
75 CPPUT_THROW(
"entry: ", name,
" // ", std::string(e.what()));
86 #define ARILES2_NAMED_ENTRY_copyto(v, entry, name) visitor.visitMapEntry(entry, other.name, #name, parameters);
87 #define ARILES2_PARENT_copyto(v, entry) entry::arilesVisit(visitor, other, parameters);
89 #define ARILES2_VISIT_copyto \
90 template <class t_Other> \
92 ariles2::copyto::Visitor &visitor, \
94 const typename ariles2::copyto::Visitor::Parameters ¶meters) const \
96 CPPUT_UNUSED_ARG(visitor); \
97 CPPUT_UNUSED_ARG(other); \
98 CPPUT_UNUSED_ARG(parameters); \
99 CPPUT_TRACE_FUNCTION; \
100 ARILES2_ENTRIES(copyto) \
103 #define ARILES2_METHODS_copyto \
104 const ariles2::copyto::Visitor::Parameters &arilesGetParameters(const ariles2::copyto::Visitor &visitor) const \
106 CPPUT_TRACE_FUNCTION; \
107 return (visitor.getDefaultParameters()); \
109 #define ARILES2_BASE_METHODS_copyto
Parameters(const bool override_parameters=true)
void visitMapEntry(const t_Left &left, t_Right &right, const std::string &name, const Parameters ¶m)
void visit(const t_Left &left, t_Right &right, const std::string &name, const Parameters ¶m)
void apply_copyto(t_Visitor &visitor, const t_Left &left, t_Right &right, const typename t_Visitor::Parameters ¶m)
visitor::Parameters Parameters
#define CPPUT_TRACE_FUNCTION
#define CPPUT_TRACE_TYPE(type)
#define CPPUT_TRACE_VALUE(value)