Subversion Repositories Kolibri OS

Rev

Rev 854 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 854 Rev 859
Line 3... Line 3...
3
  struct link *prev;
3
  struct link *prev;
4
  struct link *next;
4
  struct link *next;
5
}link_t;
5
}link_t;
6
 
6
 
Line -... Line 7...
-
 
7
#define LIST_INITIALIZE(name) \
-
 
8
	link_t name = { .prev = &name, .next = &name }
-
 
9
 
7
#define list_get_instance(link, type, member) \
10
#define list_get_instance(link, type, member) \
8
  ((type *)(((u8_t *)(link)) - ((u8_t *)&(((type *)NULL)->member))))
11
  ((type *)(((u8_t *)(link)) - ((u8_t *)&(((type *)NULL)->member))))
Line 9... Line 12...
9
 
12
 
10
static inline void link_initialize(link_t *link)
13
static inline void link_initialize(link_t *link)
Line 46... Line 49...
46
	head->next->prev = link;
49
	head->next->prev = link;
47
	head->next = link;
50
	head->next = link;
48
}
51
}
49
52
 
Line -... Line 53...
-
 
53
static inline list_insert(link_t *old, link_t *new)
-
 
54
{
-
 
55
   new->prev = old->prev;
-
 
56
   new->next = old;
-
 
57
   new->prev->next = new;
-
 
58
   old->prev = new;
-
 
59
}