summaryrefslogtreecommitdiff
path: root/Build/source/texk/xdvik/dl_list.h
diff options
context:
space:
mode:
authorPeter Breitenlohner <peb@mppmu.mpg.de>2008-07-01 15:42:36 +0000
committerPeter Breitenlohner <peb@mppmu.mpg.de>2008-07-01 15:42:36 +0000
commit6552be7f745c5a8d506148c8af9d367c9d996d24 (patch)
treeb9d673871a1490b64273a265d4d961316a2174db /Build/source/texk/xdvik/dl_list.h
parent48e2b240973977c208bc840b589b75b91a6f4c30 (diff)
xdvik 22.84.14
git-svn-id: svn://tug.org/texlive/trunk@9142 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/texk/xdvik/dl_list.h')
-rw-r--r--Build/source/texk/xdvik/dl_list.h28
1 files changed, 28 insertions, 0 deletions
diff --git a/Build/source/texk/xdvik/dl_list.h b/Build/source/texk/xdvik/dl_list.h
new file mode 100644
index 00000000000..50ef7deee0c
--- /dev/null
+++ b/Build/source/texk/xdvik/dl_list.h
@@ -0,0 +1,28 @@
+#include <stdio.h>
+#include "xdvi-config.h"
+#include "xdvi.h"
+#include "version.h"
+#include "kpathsea/c-stat.h"
+#include "kpathsea/hash.h"
+#include "kpathsea/tex-file.h"
+
+/* double linked list */
+struct dl_list {
+ void *item;
+ struct dl_list *prev;
+ struct dl_list *next;
+};
+
+void dl_list_apply(struct dl_list *list, void (*func)(const void *item));
+size_t dl_list_len(struct dl_list *list);
+struct dl_list *dl_list_head(struct dl_list *list);
+struct dl_list *dl_list_push_front(struct dl_list *list, void *item);
+struct dl_list *dl_list_insert(struct dl_list *list, void *item);
+struct dl_list *dl_list_truncate(struct dl_list *list);
+struct dl_list *dl_list_truncate_head(struct dl_list *list);
+struct dl_list *dl_list_remove(struct dl_list *list,
+ const void *elem,
+ int *count,
+ void **item,
+ Boolean (*compare_func)(const void *item1, const void *item2));
+Boolean dl_list_remove_item(struct dl_list **list);