Repository: qpid-proton
Updated Branches:
  refs/heads/master de338469b -> d549ec388


added pn_list_pop


Project: http://git-wip-us.apache.org/repos/asf/qpid-proton/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-proton/commit/3b8de5b2
Tree: http://git-wip-us.apache.org/repos/asf/qpid-proton/tree/3b8de5b2
Diff: http://git-wip-us.apache.org/repos/asf/qpid-proton/diff/3b8de5b2

Branch: refs/heads/master
Commit: 3b8de5b2dbb62e72f8d12f38c0c731f8a214965d
Parents: de33846
Author: Rafael Schloming <[email protected]>
Authored: Tue Dec 2 04:51:28 2014 -0500
Committer: Rafael Schloming <[email protected]>
Committed: Fri Dec 5 10:29:13 2014 -0500

----------------------------------------------------------------------
 proton-c/include/proton/object.h |  1 +
 proton-c/src/object/list.c       | 10 ++++++++++
 2 files changed, 11 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/3b8de5b2/proton-c/include/proton/object.h
----------------------------------------------------------------------
diff --git a/proton-c/include/proton/object.h b/proton-c/include/proton/object.h
index 2515f39..96355ad 100644
--- a/proton-c/include/proton/object.h
+++ b/proton-c/include/proton/object.h
@@ -138,6 +138,7 @@ PN_EXTERN size_t pn_list_size(pn_list_t *list);
 PN_EXTERN void *pn_list_get(pn_list_t *list, int index);
 PN_EXTERN void pn_list_set(pn_list_t *list, int index, void *value);
 PN_EXTERN int pn_list_add(pn_list_t *list, void *value);
+PN_EXTERN void *pn_list_pop(pn_list_t *list);
 PN_EXTERN ssize_t pn_list_index(pn_list_t *list, void *value);
 PN_EXTERN bool pn_list_remove(pn_list_t *list, void *value);
 PN_EXTERN void pn_list_del(pn_list_t *list, int index, int n);

http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/3b8de5b2/proton-c/src/object/list.c
----------------------------------------------------------------------
diff --git a/proton-c/src/object/list.c b/proton-c/src/object/list.c
index 7936f5b..cc292db 100644
--- a/proton-c/src/object/list.c
+++ b/proton-c/src/object/list.c
@@ -72,6 +72,16 @@ int pn_list_add(pn_list_t *list, void *value)
   return 0;
 }
 
+void *pn_list_pop(pn_list_t *list)
+{
+  assert(list);
+  if (list->size) {
+    return list->elements[list->size--];
+  } else {
+    return NULL;
+  }
+}
+
 ssize_t pn_list_index(pn_list_t *list, void *value)
 {
   for (size_t i = 0; i < list->size; i++) {


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to