From bc23a6bb05705d5551117528dfcbfcfedfee4c90 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Wed, 8 Jan 2014 19:42:04 +0100 Subject: tag/TagBuilder: overload Commit() returning a Tag object --- src/tag/TagBuilder.cxx | 8 ++++++++ src/tag/TagBuilder.hxx | 6 ++++++ 2 files changed, 14 insertions(+) (limited to 'src/tag') diff --git a/src/tag/TagBuilder.cxx b/src/tag/TagBuilder.cxx index 190307986..462f5c49a 100644 --- a/src/tag/TagBuilder.cxx +++ b/src/tag/TagBuilder.cxx @@ -133,6 +133,14 @@ TagBuilder::Commit(Tag &tag) Clear(); } +Tag +TagBuilder::Commit() +{ + Tag tag; + Commit(tag); + return tag; +} + Tag * TagBuilder::CommitNew() { diff --git a/src/tag/TagBuilder.hxx b/src/tag/TagBuilder.hxx index 302873ee4..984261ded 100644 --- a/src/tag/TagBuilder.hxx +++ b/src/tag/TagBuilder.hxx @@ -96,6 +96,12 @@ public: */ void Commit(Tag &tag); + /** + * Create a new #Tag instance from data in this object. This + * object is empty afterwards. + */ + Tag Commit(); + /** * Create a new #Tag instance from data in this object. The * returned object is owned by the caller. This object is -- cgit v1.2.3