Home | History | Annotate | Download | only in utils

Lines Matching refs:KEY

32 template <typename KEY, typename VALUE>
36 typedef KEY key_type;
63 const VALUE& valueFor(const KEY& key) const;
65 const KEY& keyAt(size_t index) const;
66 ssize_t indexOfKey(const KEY& key) const;
72 VALUE& editValueFor(const KEY& key);
79 ssize_t add(const KEY& key, const VALUE& item);
80 ssize_t replaceValueFor(const KEY& key, const VALUE& item);
87 ssize_t removeItem(const KEY& key);
91 SortedVector< key_value_pair_t<KEY, VALUE> > mVector;
98 * valueFor() is called with a key that doesn't exist.
100 template <typename KEY, typename VALUE>
101 class DefaultKeyedVector : public KeyedVector<KEY, VALUE>
105 const VALUE& valueFor(const KEY& key) const;
113 template<typename KEY, typename VALUE> inline
114 KeyedVector<KEY,VALUE>::KeyedVector()
118 template<typename KEY, typename VALUE> inline
119 ssize_t KeyedVector<KEY,VALUE>::indexOfKey(const KEY& key) const {
120 return mVector.indexOf( key_value_pair_t<KEY,VALUE>(key) );
123 template<typename KEY, typename VALUE> inline
124 const VALUE& KeyedVector<KEY,VALUE>::valueFor(const KEY& key) const {
125 ssize_t i = indexOfKey(key);
130 template<typename KEY, typename VALUE> inline
131 const VALUE& KeyedVector<KEY,VALUE>::valueAt(size_t index) const {
135 template<typename KEY, typename VALUE> inline
136 const KEY& KeyedVector<KEY,VALUE>::keyAt(size_t index) const {
137 return mVector.itemAt(index).key;
140 template<typename KEY, typename VALUE> inline
141 VALUE& KeyedVector<KEY,VALUE>::editValueFor(const KEY& key) {
142 ssize_t i = indexOfKey(key);
147 template<typename KEY, typename VALUE> inline
148 VALUE& KeyedVector<KEY,VALUE>::editValueAt(size_t index) {
152 template<typename KEY, typename VALUE> inline
153 ssize_t KeyedVector<KEY,VALUE>::add(const KEY& key, const VALUE& value) {
154 return mVector.add( key_value_pair_t<KEY,VALUE>(key, value) );
157 template<typename KEY, typename VALUE> inline
158 ssize_t KeyedVector<KEY,VALUE>::replaceValueFor(const KEY& key, const VALUE& value) {
159 key_value_pair_t<KEY,VALUE> pair(key, value);
164 template<typename KEY, typename VALUE> inline
165 ssize_t KeyedVector<KEY,VALUE>::replaceValueAt(size_t index, const VALUE& item) {
173 template<typename KEY, typename VALUE> inline
174 ssize_t KeyedVector<KEY,VALUE>::removeItem(const KEY& key) {
175 return mVector.remove(key_value_pair_t<KEY,VALUE>(key));
178 template<typename KEY, typename VALUE> inline
179 ssize_t KeyedVector<KEY, VALUE>::removeItemsAt(size_t index, size_t count) {
185 template<typename KEY, typename VALUE> inline
186 DefaultKeyedVector<KEY,VALUE>::DefaultKeyedVector(const VALUE& defValue)
191 template<typename KEY, typename VALUE> inline
192 const VALUE& DefaultKeyedVector<KEY,VALUE>::valueFor(const KEY& key) const {
193 ssize_t i = indexOfKey(key);
194 return i >= 0 ? KeyedVector<KEY,VALUE>::valueAt(i) : mDefault;