diff options
author | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2019-01-26 11:27:18 +0100 |
---|---|---|
committer | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2019-01-26 12:42:46 +0100 |
commit | ef21b3b5bf824e652addf850bcfd9374c7b33ce8 (patch) | |
tree | f3eb16a2502e026aaa6e803d3a686f93c6a84f19 /src/basic/prioq.h | |
parent | c482724aa5c5d0b1391fcf958a9a3ea6ce73a085 (diff) | |
download | systemd-ef21b3b5bf824e652addf850bcfd9374c7b33ce8.tar.gz |
basic/prioq: add prioq_peek_item()
Diffstat (limited to 'src/basic/prioq.h')
-rw-r--r-- | src/basic/prioq.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/basic/prioq.h b/src/basic/prioq.h index bba5c7caa4..1fb57bfa4c 100644 --- a/src/basic/prioq.h +++ b/src/basic/prioq.h @@ -19,8 +19,14 @@ int prioq_put(Prioq *q, void *data, unsigned *idx); int prioq_remove(Prioq *q, void *data, unsigned *idx); int prioq_reshuffle(Prioq *q, void *data, unsigned *idx); -void *prioq_peek(Prioq *q) _pure_; +void *prioq_peek_by_index(Prioq *q, unsigned idx) _pure_; +static inline void *prioq_peek(Prioq *q) { + return prioq_peek_by_index(q, 0); +} void *prioq_pop(Prioq *q); +#define PRIOQ_FOREACH_ITEM(q, p) \ + for (unsigned _i = 0; (p = prioq_peek_by_index(q, _i)); _i++) + unsigned prioq_size(Prioq *q) _pure_; bool prioq_isempty(Prioq *q) _pure_; |