49template <
class K,
class V>
55template <
class K,
class V>
60 for (ptr = list.head(); ptr != 0; ptr= ptr->next())
61 if (list.item(ptr).k == key)
66template <
class K,
class V>
73 for (ptr = list.head(); ptr != 0; ptr= ptr->next())
76 if (list.item(ptr).v == val)
86template <
class K,
class V>
89 if (list.index(
kptr) == -1)
98template <
class K,
class V>
101 if (list.index(
kptr) == -1)
112template <
class K,
class V>
120 list.item(ptr).v =
rval;
128template<
class K,
class V>
136 EST_error(
"No value set for '%s'", error_name(
rkey));
141 return list.item(ptr).v;
144template<
class K,
class V>
150template<
class K,
class V>
157 return list.item(ptr).
v;
163template<
class K,
class V>
167 return list.item(
kptr).
v;
169 if (list.index(
kptr) == -1)
172 EST_error(
"No value set in EST_TKVL");
176 return list.item(
kptr).v;
180template<
class K,
class V>
189template<
class K,
class V>
193 return list.item(
kptr).
k;
194 if (list.index(
kptr) == -1)
195 EST_error(
"No value set in EST_TKVL");
197 return list.item(
kptr).k;
200template<
class K,
class V>
206template<
class K,
class V>
213 EST_error(
"No value set for '%s'", error_name(
v));
218 return list.item(ptr).k;
221template<
class K,
class V>
224 if (find_pair_key(
rkey) == 0)
232template<
class K,
class V>
236 for(p=list.head(); p; p=p->next())
239 (*func)(item.
k, item.
v);
247template<
class K,
class V>
262template<
class K,
class V>
272 EST_warning(
"EST_TKVL: no item labelled '%s'",
en);
EST_TKVL()
default constructor
int remove_item(const K &rkey, int quiet=0)
remove key and val pair from list
int add_item(const K &rkey, const V &rval, int no_search=0)
add key-val pair to list
const V & val(const K &rkey, bool m=0) const
return value according to key (const)
const int present(const K &rkey) const
Returns true if key is present.
EST_TKVL< K, V > operator+(const EST_TKVL< K, V > &kv)
make new concatenated list
const K & key(EST_Litem *ptr, int m=1) const
find key, reference by ptr
int change_val(const K &rkey, const V &rval)
int change_key(EST_Litem *ptr, const K &rkey)
change name of key pair.
void map(void(*func)(K &, V &))
apply function to each pair
const V & val_def(const K &rkey, const V &def) const
value or default