8CLASS_DECL_ACME
void copy(::string & str, const ::payload &
payload);
10CLASS_DECL_ACME
void copy(
::payload &
payload, const ::scoped_string & scopedstr);
20 template < prototype_container CONTAINER1, prototype_container CONTAINER2 >
21 CONTAINER1& append(CONTAINER1& container1,
const CONTAINER2& container2)
24 for (
auto& item : container2)
27 ::copy(container1.add_new(), item);
36 template < prototype_container CONTAINER1, prototype_container CONTAINER2 >
37 CONTAINER1& copy(CONTAINER1& container1,
const CONTAINER2& container2)
42 return append(container1, container2);
53template < prototype_container CONTAINER >
54inline ::string as_string(
const CONTAINER& container, const ::scoped_string& scopedstrSeparator =
"|")
59 for (
const auto&
item : container)
62 if (str.has_character())
65 str += scopedstrSeparator;
69 str += ::as_string(
item);
77template <
typename ITEM >
78inline ::string as_string(const ::set < ITEM > & set, const ::scoped_string& scopedstrSeparator =
"|")
83 for (
const auto&
item : set)
86 if (str.has_character())
89 str += scopedstrSeparator;
93 str += ::as_string(
item.item());
102template < prototype_container CONTAINER >
103inline void from_string(CONTAINER & container, const ::scoped_string & scopedstr, const ::scoped_string & scopedstrSeparator =
"|")
110 while(
tokenizer.get_next_token(strToken, scopedstrSeparator))
113 typename CONTAINER::BASE_TYPE t;
115 ::from_string(t, strToken);
124template <
typename ITEM >
125inline void from_string(::set < ITEM > & set, const ::scoped_string& scopedstr, const ::scoped_string& scopedstrSeparator =
"|")
132 while (
tokenizer.get_next_token(strToken, scopedstrSeparator))
137 ::from_string(
item, strToken);