Chromium Code Reviews| Index: runtime/vm/object.h |
| diff --git a/runtime/vm/object.h b/runtime/vm/object.h |
| index 61a2866e27bbafd89d2dee7514b7633fd0217004..77b87e63a9a96b35a1d2df54549771b3dfa958f6 100644 |
| --- a/runtime/vm/object.h |
| +++ b/runtime/vm/object.h |
| @@ -8655,6 +8655,26 @@ class UserTag : public Instance { |
| }; |
| +class ObjectPoolInfo : public ValueObject { |
| + public: |
| + explicit ObjectPoolInfo(const ObjectPool& pool) |
| + : array_(TypedData::Handle(pool.info_array())) {} |
| + |
| + explicit ObjectPoolInfo(const TypedData& info_array) : array_(info_array) {} |
| + |
| + ObjectPool::EntryType InfoAt(intptr_t i) { |
| + return static_cast<ObjectPool::EntryType>(array_.GetInt8(i)); |
| + } |
| + |
| + void SetInfoAt(intptr_t i, ObjectPool::EntryType info) { |
| + array_.SetInt8(i, static_cast<int8_t>(info)); |
| + } |
| + |
| + private: |
| + const TypedData& array_; |
|
Vyacheslav Egorov (Google)
2016/12/08 19:21:58
DISALLOW_COPY_AND_ASSIGN?
kustermann
2016/12/08 19:30:19
Isn't the one from the [ValueObject] superclass en
kustermann
2016/12/09 08:52:32
I think it is.
|
| +}; |
| + |
| + |
| // Breaking cycles and loops. |
| RawClass* Object::clazz() const { |
| uword raw_value = reinterpret_cast<uword>(raw_); |