X-Git-Url: https://git.efficios.com/?a=blobdiff_plain;f=src%2Fcpp-common%2Fbt2%2Fmessage-iterator.hpp;h=36c144d09b81ddf1076f7de7dfee97f87e2eaaaf;hb=2a24eba8b45ab4bd62dfb2cd95f31e4c2a7a91a8;hp=9f3084b1fdf29a25b8e5717b319710c279f89f3d;hpb=c022776a5704be758b90a56563d491861d29fa49;p=babeltrace.git diff --git a/src/cpp-common/bt2/message-iterator.hpp b/src/cpp-common/bt2/message-iterator.hpp index 9f3084b1..36c144d0 100644 --- a/src/cpp-common/bt2/message-iterator.hpp +++ b/src/cpp-common/bt2/message-iterator.hpp @@ -41,7 +41,7 @@ public: using Shared = SharedObject; - explicit MessageIterator(const _LibObjPtr libObjPtr) noexcept : _ThisBorrowedObject {libObjPtr} + explicit MessageIterator(const LibObjPtr libObjPtr) noexcept : _ThisBorrowedObject {libObjPtr} { } @@ -93,13 +93,13 @@ public: } } - void seekBeginning() const + MessageIterator seekBeginning() const { const auto status = bt_message_iterator_seek_beginning(this->libObjPtr()); switch (status) { case BT_MESSAGE_ITERATOR_SEEK_BEGINNING_STATUS_OK: - return; + break; case BT_MESSAGE_ITERATOR_SEEK_BEGINNING_STATUS_AGAIN: throw TryAgain {}; case BT_MESSAGE_ITERATOR_SEEK_BEGINNING_STATUS_MEMORY_ERROR: @@ -109,6 +109,8 @@ public: default: bt_common_abort(); } + + return *this; } bool canSeekNsFromOrigin(const std::int64_t nsFromOrigin) const @@ -132,14 +134,14 @@ public: } } - void seekNsFromOrigin(const std::int64_t nsFromOrigin) const + MessageIterator seekNsFromOrigin(const std::int64_t nsFromOrigin) const { const auto status = bt_message_iterator_seek_ns_from_origin(this->libObjPtr(), nsFromOrigin); switch (status) { case BT_MESSAGE_ITERATOR_SEEK_NS_FROM_ORIGIN_STATUS_OK: - return; + break; case BT_MESSAGE_ITERATOR_SEEK_NS_FROM_ORIGIN_STATUS_AGAIN: throw TryAgain {}; case BT_MESSAGE_ITERATOR_SEEK_NS_FROM_ORIGIN_STATUS_MEMORY_ERROR: @@ -149,6 +151,8 @@ public: default: bt_common_abort(); } + + return *this; } bool canSeekForward() const noexcept