Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
dont document a deprecated function, and properly mark it so
[simgrid.git] / include / xbt / dict.h
index 87c70ec..ac3917c 100644 (file)
@@ -1,13 +1,12 @@
 /* xbt/dict.h -- api to a generic dictionary                                */
 
-/* Copyright (c) 2004-2014. The SimGrid Team.
- * All rights reserved.                                                     */
+/* Copyright (c) 2004-2017. The SimGrid Team. All rights reserved.          */
 
 /* This program is free software; you can redistribute it and/or modify it
  * under the terms of the license (GNU LGPL) which comes with this package. */
 
-#ifndef _XBT_DICT_H
-#define _XBT_DICT_H
+#ifndef XBT_DICT_H
+#define XBT_DICT_H
 
 #include "xbt/misc.h"           /* SG_BEGIN_DECL */
 #include "xbt/dynar.h"          /* void_f_pvoid_t */
@@ -21,6 +20,8 @@ SG_BEGIN_DECL()
  *  This section describes the API to a dictionary structure that  associates as string to a void* key. It provides the
  *  same functionality than an hash table.
  *
+ *  @deprecated If you are using C++, you might want to use `std::unordered_map` instead.
+ *
  *  Here is a little example of use:
 
 \verbatim
@@ -33,7 +34,6 @@ SG_BEGIN_DECL()
  sprintf(buff,"another good stuff");
  xbt_dict_set(mydict,"my data", strdup(buff), free); // previous data gets erased (and freed) by second add
 \endverbatim
- *
  */
 
 /** @defgroup XBT_dict_cons Dict constructor and destructor
@@ -55,7 +55,8 @@ typedef struct s_xbt_dictelm {
   xbt_dictelm_t next;
 } s_xbt_dictelm_t;
 
-XBT_PUBLIC(xbt_dict_t) xbt_dict_new(void);
+XBT_PUBLIC(xbt_dict_t)
+XBT_ATTRIB_DEPRECATED_v319("Use xbt_dict_new_homogeneous(). v3.19 will turn this warning into an error") xbt_dict_new();
 XBT_PUBLIC(xbt_dict_t) xbt_dict_new_homogeneous(void_f_pvoid_t free_ctn);
 XBT_PUBLIC(void) xbt_dict_free(xbt_dict_t * dict);
 XBT_PUBLIC(unsigned int) xbt_dict_size(xbt_dict_t dict);
@@ -174,4 +175,4 @@ xbt_dict_foreach(head, cursor, key, data) {
 
 SG_END_DECL()
 
-#endif                          /* _XBT_DICT_H */
+#endif /* XBT_DICT_H */