src/cx/map.h

changeset 1180
4c3a69b9723a
parent 1115
6db21dee4929
equal deleted inserted replaced
1179:ca4c6f590a08 1180:4c3a69b9723a
228 * Writing to that map is not allowed. 228 * Writing to that map is not allowed.
229 * 229 *
230 * You can use this is a placeholder for initializing CxMap pointers 230 * You can use this is a placeholder for initializing CxMap pointers
231 * for which you do not want to reserve memory right from the beginning. 231 * for which you do not want to reserve memory right from the beginning.
232 */ 232 */
233 cx_attr_export
233 extern CxMap *const cxEmptyMap; 234 extern CxMap *const cxEmptyMap;
234 235
235 /** 236 /**
236 * Deallocates the memory of the specified map. 237 * Deallocates the memory of the specified map.
237 * 238 *
238 * Also calls the content destructor functions for each element, if specified. 239 * Also calls the content destructor functions for each element, if specified.
239 * 240 *
240 * @param map the map to be freed 241 * @param map the map to be freed
241 */ 242 */
243 cx_attr_export
242 void cxMapFree(CxMap *map); 244 void cxMapFree(CxMap *map);
243 245
244 246
245 /** 247 /**
246 * Clears a map by removing all elements. 248 * Clears a map by removing all elements.
336 * @param map the map to create the iterator for 338 * @param map the map to create the iterator for
337 * @return an iterator for the currently stored values 339 * @return an iterator for the currently stored values
338 */ 340 */
339 cx_attr_nonnull 341 cx_attr_nonnull
340 cx_attr_nodiscard 342 cx_attr_nodiscard
343 cx_attr_export
341 CxMapIterator cxMapMutIteratorValues(CxMap *map); 344 CxMapIterator cxMapMutIteratorValues(CxMap *map);
342 345
343 /** 346 /**
344 * Creates a mutating iterator over the keys of a map. 347 * Creates a mutating iterator over the keys of a map.
345 * 348 *
352 * @param map the map to create the iterator for 355 * @param map the map to create the iterator for
353 * @return an iterator for the currently stored keys 356 * @return an iterator for the currently stored keys
354 */ 357 */
355 cx_attr_nonnull 358 cx_attr_nonnull
356 cx_attr_nodiscard 359 cx_attr_nodiscard
360 cx_attr_export
357 CxMapIterator cxMapMutIteratorKeys(CxMap *map); 361 CxMapIterator cxMapMutIteratorKeys(CxMap *map);
358 362
359 /** 363 /**
360 * Creates a mutating iterator for a map. 364 * Creates a mutating iterator for a map.
361 * 365 *
370 * @see cxMapMutIteratorKeys() 374 * @see cxMapMutIteratorKeys()
371 * @see cxMapMutIteratorValues() 375 * @see cxMapMutIteratorValues()
372 */ 376 */
373 cx_attr_nonnull 377 cx_attr_nonnull
374 cx_attr_nodiscard 378 cx_attr_nodiscard
379 cx_attr_export
375 CxMapIterator cxMapMutIterator(CxMap *map); 380 CxMapIterator cxMapMutIterator(CxMap *map);
376 381
377 #ifdef __cplusplus 382 #ifdef __cplusplus
378 } // end the extern "C" block here, because we want to start overloading 383 } // end the extern "C" block here, because we want to start overloading
379 cx_attr_nonnull 384 cx_attr_nonnull

mercurial