#ifndef LLVM_LIBC_MACROS_SYS_QUEUE_MACROS_H
#define LLVM_LIBC_MACROS_SYS_QUEUE_MACROS_H
#include "llvm-libc-macros/containerof-macro.h"
#include "llvm-libc-macros/null-macro.h"
#ifdef __cplusplus
#define QUEUE_TYPEOF(type) …
#else
#define QUEUE_TYPEOF …
#endif
#define SLIST_HEAD(name, type) …
#define SLIST_CLASS_HEAD(name, type) …
#define SLIST_HEAD_INITIALIZER(head) …
#define SLIST_ENTRY(type) …
#define SLIST_CLASS_ENTRY(type) …
#define SLIST_EMPTY(head) …
#define SLIST_FIRST(head) …
#define SLIST_NEXT(elem, field) …
#define SLIST_FOREACH(var, head, field) …
#define SLIST_FOREACH_FROM(var, head, field) …
#define SLIST_FOREACH_SAFE(var, head, field, tvar) …
#define SLIST_FOREACH_FROM_SAFE(var, head, field, tvar) …
#define SLIST_CONCAT(head1, head2, type, field) …
#define SLIST_INIT(head) …
#define SLIST_INSERT_AFTER(slistelem, elem, field) …
#define SLIST_INSERT_HEAD(head, elem, field) …
#define SLIST_REMOVE(head, elem, type, field) …
#define SLIST_REMOVE_AFTER(elem, field) …
#define SLIST_REMOVE_HEAD(head, field) …
#define SLIST_SWAP(head1, head2, type) …
#define STAILQ_HEAD(name, type) …
#define STAILQ_CLASS_HEAD(name, type) …
#define STAILQ_HEAD_INITIALIZER(head) …
#define STAILQ_ENTRY(type) …
#define STAILQ_CLASS_ENTRY(type) …
#define STAILQ_EMPTY(head) …
#define STAILQ_FIRST(head) …
#define STAILQ_LAST(head, type, field) …
#define STAILQ_NEXT(elem, field) …
#define STAILQ_FOREACH(var, head, field) …
#define STAILQ_FOREACH_FROM(var, head, field) …
#define STAILQ_FOREACH_SAFE(var, head, field, tvar) …
#define STAILQ_FOREACH_FROM_SAFE(var, head, field, tvar) …
#define STAILQ_CONCAT(head1, head2, type, field) …
#define STAILQ_INIT(head) …
#define STAILQ_INSERT_AFTER(head, listelem, elem, field) …
#define STAILQ_INSERT_HEAD(head, elem, field) …
#define STAILQ_INSERT_TAIL(head, elem, field) …
#define STAILQ_REMOVE(head, elem, type, field) …
#define STAILQ_REMOVE_AFTER(head, elem, field) …
#define STAILQ_REMOVE_HEAD(head, field) …
#define STAILQ_SWAP(head1, head2, type) …
#endif