nxt_list.h (382:0b999f4f3545) nxt_list.h (2084:7d479274f334)
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
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) \
40#define nxt_list_part(list) \
42 (&(list)->part)
43
44
41 (&(list)->part)
42
43
45#define \
46nxt_list_data(part) \
44#define nxt_list_data(part) \
47 ((void *) part->data)
48
49
45 ((void *) part->data)
46
47
50#define \
51nxt_list_first(list) \
48#define nxt_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
49 nxt_list_data(nxt_list_part(list))
50
51
52nxt_inline void *
53nxt_list_elt(nxt_list_t *list, nxt_uint_t n)
54{
55 nxt_list_part_t *part;
56

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

94
95NXT_EXPORT nxt_list_t *nxt_list_create(nxt_mp_t *mp, nxt_uint_t n, size_t size);
96NXT_EXPORT void *nxt_list_add(nxt_list_t *list);
97NXT_EXPORT void *nxt_list_zero_add(nxt_list_t *list);
98
99NXT_EXPORT void *nxt_list_next(nxt_list_t *list, nxt_list_next_t *next);
100
101
105#define \
106nxt_list_next_value(list, next) \
102#define nxt_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 ---
103 (nxt_pointer_to(nxt_list_data((next)->part), (next)->elt * (list)->size))
104
105
106nxt_inline nxt_uint_t
107nxt_list_nelts(nxt_list_t *list)
108{
109 nxt_uint_t n;
110 nxt_list_part_t *part;

--- 17 unchanged lines hidden ---