aboutsummaryrefslogtreecommitdiff
path: root/src/include/gnunet_container_lib.h
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2009-10-03 18:46:00 +0000
committerChristian Grothoff <christian@grothoff.org>2009-10-03 18:46:00 +0000
commit6aaab5e7cb4cb0c5fd5a5575c45b48124597e570 (patch)
treeefd7fb369ead6fdbf9a93f810f9d914275854ff7 /src/include/gnunet_container_lib.h
parent2681e7d4316cd505b646473bf0039b91db0b04b1 (diff)
downloadgnunet-6aaab5e7cb4cb0c5fd5a5575c45b48124597e570.tar.gz
gnunet-6aaab5e7cb4cb0c5fd5a5575c45b48124597e570.zip
use enum
Diffstat (limited to 'src/include/gnunet_container_lib.h')
-rw-r--r--src/include/gnunet_container_lib.h37
1 files changed, 31 insertions, 6 deletions
diff --git a/src/include/gnunet_container_lib.h b/src/include/gnunet_container_lib.h
index b63ced75b..e27a58f13 100644
--- a/src/include/gnunet_container_lib.h
+++ b/src/include/gnunet_container_lib.h
@@ -42,10 +42,6 @@ extern "C"
42#endif 42#endif
43 43
44 44
45#define GNUNET_MEM_DISP_TRANSIENT 0
46#define GNUNET_MEM_DISP_STATIC 2
47#define GNUNET_MEM_DISP_DYNAMIC 4
48
49/* ******************* bloomfilter ***************** */ 45/* ******************* bloomfilter ***************** */
50 46
51/** 47/**
@@ -877,6 +873,30 @@ GNUNET_CONTAINER_heap_get_size (struct GNUNET_CONTAINER_Heap *heap);
877/* ******************** Singly linked list *************** */ 873/* ******************** Singly linked list *************** */
878 874
879/** 875/**
876 * Possible ways for how data stored in the linked list
877 * might be allocated.
878 */
879enum GNUNET_CONTAINER_SListDisposition
880 {
881 /**
882 * Single-linked list must copy the buffer.
883 */
884 GNUNET_CONTAINER_SLIST_DISPOSITION_TRANSIENT = 0,
885
886 /**
887 * Data is static, no need to copy or free.
888 */
889 GNUNET_CONTAINER_SLIST_DISPOSITION_STATIC = 2,
890
891 /**
892 * Data is dynamic, do not copy but free when done.
893 */
894 GNUNET_CONTAINER_SLIST_DISPOSITION_DYNAMIC = 4
895 };
896
897
898
899/**
880 * Handle to a singly linked list 900 * Handle to a singly linked list
881 */ 901 */
882struct GNUNET_CONTAINER_SList; 902struct GNUNET_CONTAINER_SList;
@@ -894,7 +914,9 @@ struct GNUNET_CONTAINER_SList_Iterator;
894 * @param buf payload buffer 914 * @param buf payload buffer
895 * @param len length of the buffer 915 * @param len length of the buffer
896 */ 916 */
897void GNUNET_CONTAINER_slist_add (struct GNUNET_CONTAINER_SList *l, int disp, const void *buf, size_t len); 917void GNUNET_CONTAINER_slist_add (struct GNUNET_CONTAINER_SList *l,
918 enum GNUNET_CONTAINER_SListDisposition disp,
919 const void *buf, size_t len);
898 920
899 921
900/** 922/**
@@ -960,7 +982,10 @@ void GNUNET_CONTAINER_slist_erase (struct GNUNET_CONTAINER_SList_Iterator *i);
960 * @param buf payload buffer 982 * @param buf payload buffer
961 * @param len length of the payload 983 * @param len length of the payload
962 */ 984 */
963void GNUNET_CONTAINER_slist_insert (struct GNUNET_CONTAINER_SList_Iterator *before, int disp, const void *buf, size_t len); 985void GNUNET_CONTAINER_slist_insert (struct GNUNET_CONTAINER_SList_Iterator *before,
986 enum GNUNET_CONTAINER_SListDisposition disp,
987 const void *buf,
988 size_t len);
964 989
965 990
966/** 991/**