Support const/non-const iteration for operand::Object.
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
bool Set::exist(const Index &index) const { return index.value() < _objects.size(); }
+void Set::iterate(const std::function<void(const Index &, const Object &)> &fn) const
+{
+ for (const auto &e : _objects)
+ {
+ fn(e.first, *e.second);
+ }
+}
+
+void Set::iterate(const std::function<void(const Index &, Object &)> &fn)
+{
+ for (auto &e : _objects)
+ {
+ fn(e.first, *e.second);
+ }
+}
+
} // namespace operand
} // namespace graph
} // namespace neurun
const Object &at(const Index &) const;
Object &at(const Index &);
bool exist(const Index &) const;
+ void iterate(const std::function<void(const Index &, const Object &)> &fn) const;
+ void iterate(const std::function<void(const Index &, Object &)> &fn);
private:
const Index generateIndex();