[neurun] Add a helper function and an assertion (#4598)
author장지섭/On-Device Lab(SR)/Engineer/삼성전자 <jiseob.jang@samsung.com>
Wed, 6 Mar 2019 08:24:28 +0000 (17:24 +0900)
committer오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 <hseok82.oh@samsung.com>
Wed, 6 Mar 2019 08:24:28 +0000 (17:24 +0900)
This commit adds a helper function and an assertion in `model::operand::Object`.
  - The helper function `hasData()` check whether Object has the data or not.
  - Add an assertion to `model::operand::Object::data()`.

Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
runtimes/neurun/src/model/operand/Object.h

index 9ebf037..321ec04 100644 (file)
@@ -71,7 +71,17 @@ public:
 
 public:
   void data(std::unique_ptr<Data> &&data) { _data = std::move(data); }
-  const Data &data(void) const { return *_data; }
+  const Data &data(void) const
+  {
+    assert(_data);
+    return *_data;
+  }
+
+  /**
+   * @brief Get true if Object has data, otherwise @c false
+   * @return @c true if Object has data, otherwise @c false
+   */
+  bool hasData(void) const { return _data != nullptr; }
 
 public:
   template <typename T, typename... Args> void data(Args &&... args)