summaryrefslogtreecommitdiff
path: root/src/ll-internal.h
blob: e8296696a89d3988ef581660f2d56c53ea4ac7b4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#ifndef __VXGG_REWRITE___LL_INTERNAL_H___21242172227746___
#define __VXGG_REWRITE___LL_INTERNAL_H___21242172227746___

#define __VXGG_REWRITE___LL_INTERNAL___ 1
#include "ll.h"
#undef __VXGG_REWRITE___LL_INTERNAL___

typedef struct dll {
    void *data;
    dll_freecb freecb;

    struct dll *next;
    struct dll *prev;

} dllnode;
typedef struct dlinked {
    int size;
    dllnode *start;
    dllnode *end;

} dlinkedlist;

dllnode * dllnode_init(void *data, dll_freecb fcb);

// Note: This file exists because I want to reuse dlinkedlist's definitions from threadpool to create a concurrent queue without
// sacrificing the opaqueness of the definition

#endif