18 template <
class t_Visitor,
class t_BetterEnum,
class t_Flags>
23 const typename t_BetterEnum::_integral * = NULL,
24 const typename t_BetterEnum::_value_iterable * = NULL,
25 const typename t_BetterEnum::_name_iterable * = NULL,
26 const typename t_BetterEnum::_value_iterator * = NULL,
27 const typename t_BetterEnum::_name_iterator * = NULL)
30 std::string enum_value;
31 visitor.readElement(enum_value);
32 entry = t_BetterEnum::_from_string(enum_value.c_str());
42 template <
class t_Visitor,
class t_BetterEnum,
class t_Flags>
45 const t_BetterEnum &entry,
47 const typename t_BetterEnum::_integral * = NULL,
48 const typename t_BetterEnum::_value_iterable * = NULL,
49 const typename t_BetterEnum::_name_iterable * = NULL,
50 const typename t_BetterEnum::_value_iterator * = NULL,
51 const typename t_BetterEnum::_name_iterator * = NULL)
54 writer.writeElement(std::string(entry._to_string()));
64 template <
class t_Visitor,
class t_BetterEnum>
67 const t_BetterEnum &left,
68 const t_BetterEnum &right,
69 const typename t_Visitor::Parameters & ,
70 const typename t_BetterEnum::_integral * = NULL,
71 const typename t_BetterEnum::_value_iterable * = NULL,
72 const typename t_BetterEnum::_name_iterable * = NULL,
73 const typename t_BetterEnum::_value_iterator * = NULL,
74 const typename t_BetterEnum::_name_iterator * = NULL)
77 visitor.equal_ &= (left == right);
88 template <
class t_Visitor,
class t_BetterEnum>
92 const typename t_Visitor::Parameters & ,
93 const typename t_BetterEnum::_integral * = NULL,
94 const typename t_BetterEnum::_value_iterable * = NULL,
95 const typename t_BetterEnum::_name_iterable * = NULL,
96 const typename t_BetterEnum::_value_iterator * = NULL,
97 const typename t_BetterEnum::_name_iterator * = NULL)
100 if (t_BetterEnum::_size() > 0)
102 entry = t_BetterEnum::_values()[0];
void ARILES_VISIBILITY_ATTRIBUTE apply_compare(t_Visitor &visitor, const t_Left &left, const t_Right &right, const typename t_Visitor::Parameters ¶m, ARILES_IS_BASE_ENABLER(ariles::Ariles, t_Left))
#define ARILES_TRACE_FUNCTION
void ARILES_VISIBILITY_ATTRIBUTE apply_defaults(const t_Visitor &visitor, t_Entry &entry, const typename t_Visitor::Parameters ¶m, ARILES_IS_BASE_ENABLER(ariles::defaults::Base, t_Entry))
void ARILES_VISIBILITY_ATTRIBUTE apply_write(t_Visitor &writer, const t_Entry &entry, const typename t_Visitor::Parameters ¶m, ARILES_IS_BASE_ENABLER(ariles::write::Base, t_Entry))
#define ARILES_VISIBILITY_ATTRIBUTE
void ARILES_VISIBILITY_ATTRIBUTE apply_read(t_Visitor &visitor, t_Entry &entry, const typename t_Visitor::Parameters ¶meters, ARILES_IS_BASE_ENABLER(ariles::read::Base, t_Entry))