diff options
Diffstat (limited to 'tools/perf/util/strlist.h')
-rw-r--r-- | tools/perf/util/strlist.h | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/tools/perf/util/strlist.h b/tools/perf/util/strlist.h index 3ba839007d2c..dd9f922ec67c 100644 --- a/tools/perf/util/strlist.h +++ b/tools/perf/util/strlist.h | |||
@@ -4,14 +4,15 @@ | |||
4 | #include <linux/rbtree.h> | 4 | #include <linux/rbtree.h> |
5 | #include <stdbool.h> | 5 | #include <stdbool.h> |
6 | 6 | ||
7 | #include "rblist.h" | ||
8 | |||
7 | struct str_node { | 9 | struct str_node { |
8 | struct rb_node rb_node; | 10 | struct rb_node rb_node; |
9 | const char *s; | 11 | const char *s; |
10 | }; | 12 | }; |
11 | 13 | ||
12 | struct strlist { | 14 | struct strlist { |
13 | struct rb_root entries; | 15 | struct rblist rblist; |
14 | unsigned int nr_entries; | ||
15 | bool dupstr; | 16 | bool dupstr; |
16 | }; | 17 | }; |
17 | 18 | ||
@@ -32,18 +33,18 @@ static inline bool strlist__has_entry(struct strlist *self, const char *entry) | |||
32 | 33 | ||
33 | static inline bool strlist__empty(const struct strlist *self) | 34 | static inline bool strlist__empty(const struct strlist *self) |
34 | { | 35 | { |
35 | return self->nr_entries == 0; | 36 | return rblist__empty(&self->rblist); |
36 | } | 37 | } |
37 | 38 | ||
38 | static inline unsigned int strlist__nr_entries(const struct strlist *self) | 39 | static inline unsigned int strlist__nr_entries(const struct strlist *self) |
39 | { | 40 | { |
40 | return self->nr_entries; | 41 | return rblist__nr_entries(&self->rblist); |
41 | } | 42 | } |
42 | 43 | ||
43 | /* For strlist iteration */ | 44 | /* For strlist iteration */ |
44 | static inline struct str_node *strlist__first(struct strlist *self) | 45 | static inline struct str_node *strlist__first(struct strlist *self) |
45 | { | 46 | { |
46 | struct rb_node *rn = rb_first(&self->entries); | 47 | struct rb_node *rn = rb_first(&self->rblist.entries); |
47 | return rn ? rb_entry(rn, struct str_node, rb_node) : NULL; | 48 | return rn ? rb_entry(rn, struct str_node, rb_node) : NULL; |
48 | } | 49 | } |
49 | static inline struct str_node *strlist__next(struct str_node *sn) | 50 | static inline struct str_node *strlist__next(struct str_node *sn) |