summaryrefslogtreecommitdiff
path: root/src/ll-internal.h
blob: f62780725b9af3d6eedcfd9d4277e1b6ca678323 (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
#ifndef __VXGG_REWRITE___LL_INTERNAL_H___21242172227746___
#define __VXGG_REWRITE___LL_INTERNAL_H___21242172227746___

#define __VXGG_REWRITE___LL_INTERNAL___
#include "ll.h"

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