From 074a23e6b4c7968715cfcc52ab9305be8a9fe3ac Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Tue, 3 Dec 2013 11:17:43 +0100 Subject: TagBuilder: add method HasType() --- src/tag/TagBuilder.cxx | 10 ++++++++++ src/tag/TagBuilder.hxx | 7 +++++++ 2 files changed, 17 insertions(+) (limited to 'src/tag') diff --git a/src/tag/TagBuilder.cxx b/src/tag/TagBuilder.cxx index 25e5cc24b..02749cfd5 100644 --- a/src/tag/TagBuilder.cxx +++ b/src/tag/TagBuilder.cxx @@ -74,6 +74,16 @@ TagBuilder::Commit() return tag; } +bool +TagBuilder::HasType(TagType type) const +{ + for (auto i : items) + if (i->type == type) + return true; + + return false; +} + inline void TagBuilder::AddItemInternal(TagType type, const char *value, size_t length) { diff --git a/src/tag/TagBuilder.hxx b/src/tag/TagBuilder.hxx index ffc60a1b2..ff6251014 100644 --- a/src/tag/TagBuilder.hxx +++ b/src/tag/TagBuilder.hxx @@ -108,6 +108,13 @@ public: items.reserve(n); } + /** + * Checks whether the tag contains one or more items with + * the specified type. + */ + gcc_pure + bool HasType(TagType type) const; + /** * Appends a new tag item. * -- cgit v1.2.3