summaryrefslogtreecommitdiffhomepage
path: root/src/core/ngx_rbtree.h
diff options
context:
space:
mode:
authorVladimir Homutov <vl@nginx.com>2021-06-21 09:42:43 +0300
committerVladimir Homutov <vl@nginx.com>2021-06-21 09:42:43 +0300
commit8b927107287094f018cc6f5addc543e79f88ec74 (patch)
treed34f30eb724b1ee0d0140e6e0c1d47a7dcc8a0b7 /src/core/ngx_rbtree.h
parenta407583ef17d9afa9e48eb8d0749289a0af84388 (diff)
downloadnginx-8b927107287094f018cc6f5addc543e79f88ec74.tar.gz
nginx-8b927107287094f018cc6f5addc543e79f88ec74.tar.bz2
Core: added the ngx_rbtree_data() macro.
Diffstat (limited to 'src/core/ngx_rbtree.h')
-rw-r--r--src/core/ngx_rbtree.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/core/ngx_rbtree.h b/src/core/ngx_rbtree.h
index 97f0e3e11..e8c358213 100644
--- a/src/core/ngx_rbtree.h
+++ b/src/core/ngx_rbtree.h
@@ -47,6 +47,9 @@ struct ngx_rbtree_s {
(tree)->sentinel = s; \
(tree)->insert = i
+#define ngx_rbtree_data(node, type, link) \
+ (type *) ((u_char *) (node) - offsetof(type, link))
+
void ngx_rbtree_insert(ngx_rbtree_t *tree, ngx_rbtree_node_t *node);
void ngx_rbtree_delete(ngx_rbtree_t *tree, ngx_rbtree_node_t *node);