Deleted Added
1
2/*
3 * Copyright (C) Igor Sysoev
4 * Copyright (C) NGINX, Inc.
5 */
6
7#ifndef _NXT_LIST_H_INCLUDED_
8#define _NXT_LIST_H_INCLUDED_

--- 23 unchanged lines hidden (view full) ---

32
33
34typedef struct {
35 nxt_list_part_t *part;
36 uintptr_t elt;
37} nxt_list_next_t;
38
39
40#define \
41nxt_list_part(list) \
42 (&(list)->part)
43
44
45#define \
46nxt_list_data(part) \
47 ((void *) part->data)
48
49
50#define \
51nxt_list_first(list) \
52 nxt_list_data(nxt_list_part(list))
53
54
55nxt_inline void *
56nxt_list_elt(nxt_list_t *list, nxt_uint_t n)
57{
58 nxt_list_part_t *part;
59

--- 37 unchanged lines hidden (view full) ---

97
98NXT_EXPORT nxt_list_t *nxt_list_create(nxt_mp_t *mp, nxt_uint_t n, size_t size);
99NXT_EXPORT void *nxt_list_add(nxt_list_t *list);
100NXT_EXPORT void *nxt_list_zero_add(nxt_list_t *list);
101
102NXT_EXPORT void *nxt_list_next(nxt_list_t *list, nxt_list_next_t *next);
103
104
105#define \
106nxt_list_next_value(list, next) \
107 (nxt_pointer_to(nxt_list_data((next)->part), (next)->elt * (list)->size))
108
109
110nxt_inline nxt_uint_t
111nxt_list_nelts(nxt_list_t *list)
112{
113 nxt_uint_t n;
114 nxt_list_part_t *part;

--- 17 unchanged lines hidden ---