[coco] Rename Object::Def and Object::Use (#1478)
author박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 <jh1302.park@samsung.com>
Wed, 12 Sep 2018 22:57:06 +0000 (07:57 +0900)
committerGitHub Enterprise <noreply-CODE@samsung.com>
Wed, 12 Sep 2018 22:57:06 +0000 (07:57 +0900)
This commit renames Object::Def and Object::Use as Object::Producer and
Object::Consumer, respectively.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
12 files changed:
contrib/coco/core/include/coco/IR/Conv2D.h
contrib/coco/core/include/coco/IR/DefHook.h
contrib/coco/core/include/coco/IR/DefSlot.h
contrib/coco/core/include/coco/IR/Instr.h
contrib/coco/core/include/coco/IR/Object.h
contrib/coco/core/include/coco/IR/ObjectInfo.h
contrib/coco/core/include/coco/IR/UseHook.h
contrib/coco/core/include/coco/IR/UseSlot.h
contrib/coco/core/src/IR/Def.mock.h
contrib/coco/core/src/IR/Object.cpp
contrib/coco/core/src/IR/ObjectInfo.cpp
contrib/coco/core/src/IR/Use.mock.h

index 9452003..8cb4676 100644 (file)
@@ -16,7 +16,7 @@ namespace coco
  * NOTE IFM and OFM are implicit. Only 4D kernel is explicit in this class
  * TODO Decide source code layout policy and extract this class if necessary
  */
-class Conv2D : public Op, public Object::Use
+class Conv2D : public Op, public Object::Consumer
 {
 public:
   explicit Conv2D(const PtrLink<Op, Instr> *, const PtrLink<Object, ObjectInfo> *);
index 9fe4506..c544771 100644 (file)
@@ -12,7 +12,7 @@ namespace coco
 class DefHook final
 {
 public:
-  DefHook(const PtrLink<Object, ObjectInfo> *obj_link, Object::Def *def)
+  DefHook(const PtrLink<Object, ObjectInfo> *obj_link, Object::Producer *def)
       : _obj_link{obj_link}, _def{def}
   {
     // DO NOTHING
@@ -27,7 +27,8 @@ public:
 
 private:
   const PtrLink<Object, ObjectInfo> *const _obj_link;
-  Object::Def *const _def;
+  // TODO Rename field
+  Object::Producer *const _def;
 };
 
 } // namespace coco
index edfe392..537cfee 100644 (file)
@@ -9,7 +9,7 @@ namespace coco
 template <typename T> class DefSlot final
 {
 public:
-  DefSlot(const PtrLink<Object, ObjectInfo> *obj_link, Object::Def *use)
+  DefSlot(const PtrLink<Object, ObjectInfo> *obj_link, Object::Producer *use)
       : _hook{obj_link, use}, _value{nullptr}
   {
   }
index 92fb488..4348235 100644 (file)
@@ -152,7 +152,7 @@ public:
 namespace coco
 {
 
-class FeatureInstr : public Instr, public Object::Def, public Object::Use
+class FeatureInstr : public Instr, public Object::Producer, public Object::Consumer
 {
 public:
   FeatureInstr(const PtrLink<Object, ObjectInfo> *obj_link);
index 630f905..33e9899 100644 (file)
@@ -21,17 +21,17 @@ namespace coco
 class Object
 {
 public:
-  struct Def : public Bag::Updater
+  struct Producer : public Bag::Updater
   {
-    virtual ~Def() = default;
+    virtual ~Producer() = default;
   };
 
-  struct Use : public Bag::Reader
+  struct Consumer : public Bag::Reader
   {
-    virtual ~Use() = default;
+    virtual ~Consumer() = default;
   };
 
-  using User = std::set<Use *>;
+  using ConsumerSet = std::set<Consumer *>;
 
 public:
   Object();
@@ -58,8 +58,8 @@ private:
   ObjectInfo *info(void) const;
 
 public:
-  Def *def(void) const;
-  const User *user(void) const;
+  Producer *def(void) const;
+  const ConsumerSet *user(void) const;
 
 private:
   Dep _dep;
index d73fd90..508913e 100644 (file)
@@ -15,16 +15,16 @@ public:
   virtual ~ObjectInfo() = default;
 
 public:
-  Object::Def *def(void) const { return _def; }
-  void def(Object::Def *d);
+  Object::Producer *def(void) const { return _def; }
+  void def(Object::Producer *d);
 
 public:
-  Object::User *user(void) { return &_user; }
-  const Object::User *user(void) const { return &_user; }
+  Object::ConsumerSet *user(void) { return &_user; }
+  const Object::ConsumerSet *user(void) const { return &_user; }
 
 private:
-  Object::Def *_def = nullptr;
-  Object::User _user;
+  Object::Producer *_def = nullptr;
+  Object::ConsumerSet _user;
 };
 
 } // namespace coco
index 13361e5..0bec126 100644 (file)
@@ -12,7 +12,7 @@ namespace coco
 class UseHook final
 {
 public:
-  UseHook(const PtrLink<Object, ObjectInfo> *obj_link, Object::Use *use)
+  UseHook(const PtrLink<Object, ObjectInfo> *obj_link, Object::Consumer *use)
       : _obj_link{obj_link}, _use{use}
   {
     // DO NOTHING
@@ -27,7 +27,8 @@ public:
 
 private:
   const PtrLink<Object, ObjectInfo> *const _obj_link;
-  Object::Use *const _use;
+  // TODO Rename field
+  Object::Consumer *const _use;
 };
 
 } // namespace coco
index 280db00..9499551 100644 (file)
@@ -11,7 +11,7 @@ namespace coco
 template <typename T> class UseSlot final
 {
 public:
-  UseSlot(const PtrLink<Object, ObjectInfo> *obj_link, Object::Use *use)
+  UseSlot(const PtrLink<Object, ObjectInfo> *obj_link, Object::Consumer *use)
       : _hook{obj_link, use}, _value{nullptr}
   {
     // DO NOTHING
index 0efbf48..1d30bc2 100644 (file)
@@ -7,7 +7,7 @@ namespace
 {
 namespace mock
 {
-struct Def final : public coco::Object::Def
+struct Def final : public coco::Object::Producer
 {
   coco::Instr *loc(void) override { return nullptr; }
 };
index 2fca0cc..a93d0f1 100644 (file)
@@ -23,7 +23,7 @@ ObjectInfo *Object::info(void) const
   return res;
 }
 
-Object::Def *Object::def(void) const { return info()->def(); }
-const Object::User *Object::user(void) const { return info()->user(); }
+Object::Producer *Object::def(void) const { return info()->def(); }
+const Object::ConsumerSet *Object::user(void) const { return info()->user(); }
 
 } // namespace coco
index 6aef12e..f49b67d 100644 (file)
@@ -5,7 +5,7 @@
 namespace coco
 {
 
-void ObjectInfo::def(Object::Def *d)
+void ObjectInfo::def(Object::Producer *d)
 {
   // This assert ensures that object cannot have multiple def.
   assert((_def == nullptr) || (d == nullptr));
index 0d8e8de..e98adf1 100644 (file)
@@ -7,7 +7,8 @@ namespace
 {
 namespace mock
 {
-struct Use final : public coco::Object::Use
+// TODO Rename class
+struct Use final : public coco::Object::Consumer
 {
   coco::Instr *loc(void) override { return nullptr; }
 };