aboutsummaryrefslogtreecommitdiff
path: root/model.h
diff options
context:
space:
mode:
authorTeddy <ted.sybil@gmail.com>2013-08-13 19:42:19 +0800
committerTeddy <ted.sybil@gmail.com>2013-08-13 19:42:19 +0800
commitcfb7f91f0153250b009a68b076ef4d1e6f12c4eb (patch)
tree2648fb7eaf56aa7b00e43f00820d41d84bc5b7af /model.h
parent5fe2cc5264b28726a6a43e2141d252caa66d37f9 (diff)
add the middle class: `Container` to help resolve circular issues
Diffstat (limited to 'model.h')
-rw-r--r--model.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/model.h b/model.h
index 7fb9fc8..1ace1c9 100644
--- a/model.h
+++ b/model.h
@@ -15,6 +15,7 @@ const int CLS_PAR_BRA = 1 << 2;
const int CLS_SIM_OBJ = 1 << 0;
const int CLS_PAIR_OBJ = 1 << 1;
+const int CLS_CONTAINER = 1 << 20;
#define TO_PAIR(ptr) \
(static_cast<Pair*>(ptr))
@@ -101,6 +102,12 @@ class EvalObj : public FrameObj {
virtual ReprCons *get_repr_cons() = 0;
};
+class Container: public EvalObj {
+ public:
+ size_t gc_refs;
+ Container(int otype);
+};
+
/** @class RetAddr
* Tracking the caller's Pair pointer
*/