cpp-common/bt2: remove redundant assertions
[babeltrace.git] / src / cpp-common / bt2 / field-path.hpp
index caf1de001da9865985ffc7ef740a854e4140b4a5..fc087593b881ecbaef878ccdea4642c4c3884de4 100644 (file)
@@ -13,9 +13,9 @@
 
 #include "common/assert.h"
 
+#include "borrowed-object-iterator.hpp"
 #include "borrowed-object.hpp"
-#include "common-iter.hpp"
-#include "shared-obj.hpp"
+#include "shared-object.hpp"
 
 namespace bt2 {
 
@@ -31,21 +31,11 @@ enum class FieldPathItemType
 class ConstFieldPathItem : public BorrowedObject<const bt_field_path_item>
 {
 public:
-    explicit ConstFieldPathItem(const _LibObjPtr libObjPtr) noexcept :
+    explicit ConstFieldPathItem(const LibObjPtr libObjPtr) noexcept :
         _ThisBorrowedObject {libObjPtr}
     {
     }
 
-    ConstFieldPathItem(const ConstFieldPathItem& fpItem) noexcept : _ThisBorrowedObject {fpItem}
-    {
-    }
-
-    ConstFieldPathItem& operator=(const ConstFieldPathItem& fpItem) noexcept
-    {
-        _ThisBorrowedObject::operator=(fpItem);
-        return *this;
-    }
-
     FieldPathItemType type() const noexcept
     {
         return static_cast<FieldPathItemType>(this->_libType());
@@ -78,23 +68,12 @@ private:
 class ConstIndexFieldPathItem final : public ConstFieldPathItem
 {
 public:
-    explicit ConstIndexFieldPathItem(const _LibObjPtr libObjPtr) noexcept :
+    explicit ConstIndexFieldPathItem(const LibObjPtr libObjPtr) noexcept :
         ConstFieldPathItem {libObjPtr}
     {
         BT_ASSERT_DBG(this->isIndex());
     }
 
-    ConstIndexFieldPathItem(const ConstIndexFieldPathItem& fpItem) noexcept :
-        ConstFieldPathItem {fpItem}
-    {
-    }
-
-    ConstIndexFieldPathItem& operator=(const ConstIndexFieldPathItem& fpItem) noexcept
-    {
-        ConstFieldPathItem::operator=(fpItem);
-        return *this;
-    }
-
     std::uint64_t index() const noexcept
     {
         return bt_field_path_item_index_get_index(this->libObjPtr());
@@ -103,7 +82,6 @@ public:
 
 inline ConstIndexFieldPathItem ConstFieldPathItem::asIndex() const noexcept
 {
-    BT_ASSERT_DBG(this->isIndex());
     return ConstIndexFieldPathItem {this->libObjPtr()};
 }
 
@@ -111,12 +89,12 @@ namespace internal {
 
 struct FieldPathRefFuncs final
 {
-    static void get(const bt_field_path * const libObjPtr)
+    static void get(const bt_field_path * const libObjPtr) noexcept
     {
         bt_field_path_get_ref(libObjPtr);
     }
 
-    static void put(const bt_field_path * const libObjPtr)
+    static void put(const bt_field_path * const libObjPtr) noexcept
     {
         bt_field_path_put_ref(libObjPtr);
     }
@@ -127,9 +105,8 @@ struct FieldPathRefFuncs final
 class ConstFieldPath final : public BorrowedObject<const bt_field_path>
 {
 public:
-    using Shared = SharedObj<ConstFieldPath, const bt_field_path, internal::FieldPathRefFuncs>;
-
-    using Iterator = CommonIterator<ConstFieldPath, ConstFieldPathItem>;
+    using Shared = SharedObject<ConstFieldPath, const bt_field_path, internal::FieldPathRefFuncs>;
+    using Iterator = BorrowedObjectIterator<ConstFieldPath>;
 
     enum class Scope
     {
@@ -139,18 +116,8 @@ public:
         EVENT_PAYLOAD = BT_FIELD_PATH_SCOPE_EVENT_PAYLOAD,
     };
 
-    explicit ConstFieldPath(const _LibObjPtr libObjPtr) noexcept : _ThisBorrowedObject {libObjPtr}
-    {
-    }
-
-    ConstFieldPath(const ConstFieldPath& fieldPath) noexcept : _ThisBorrowedObject {fieldPath}
-    {
-    }
-
-    ConstFieldPath& operator=(const ConstFieldPath& fieldPath) noexcept
+    explicit ConstFieldPath(const LibObjPtr libObjPtr) noexcept : _ThisBorrowedObject {libObjPtr}
     {
-        _ThisBorrowedObject::operator=(fieldPath);
-        return *this;
     }
 
     Scope rootScope() const noexcept
@@ -158,7 +125,7 @@ public:
         return static_cast<Scope>(bt_field_path_get_root_scope(this->libObjPtr()));
     }
 
-    std::uint64_t size() const noexcept
+    std::uint64_t length() const noexcept
     {
         return bt_field_path_get_item_count(this->libObjPtr());
     }
@@ -176,7 +143,7 @@ public:
 
     Iterator end() const noexcept
     {
-        return Iterator {*this, this->size()};
+        return Iterator {*this, this->length()};
     }
 
     Shared shared() const noexcept
This page took 0.024876 seconds and 4 git commands to generate.