Index: runtime/vm/raw_object.h |
=================================================================== |
--- runtime/vm/raw_object.h (revision 24693) |
+++ runtime/vm/raw_object.h (working copy) |
@@ -66,6 +66,7 @@ |
V(Stacktrace) \ |
V(JSRegExp) \ |
V(WeakProperty) \ |
+ V(MirrorReference) \ |
V(DartFunction) \ |
V(Float32x4) \ |
V(Uint32x4) \ |
@@ -1526,7 +1527,21 @@ |
friend class ScavengerVisitor; |
}; |
+// MirrorReferences are used by mirrors to hold reflectees that are VM |
+// internal objects, such as libraries, classes, functions or types. |
+class RawMirrorReference : public RawInstance { |
+ RAW_HEAP_OBJECT_IMPLEMENTATION(MirrorReference); |
+ RawObject** from() { |
+ return reinterpret_cast<RawObject**>(&ptr()->referent_); |
+ } |
+ RawObject* referent_; |
+ RawObject** to() { |
+ return reinterpret_cast<RawObject**>(&ptr()->referent_); |
+ } |
+}; |
+ |
+ |
// Class Id predicates. |
inline bool RawObject::IsErrorClassId(intptr_t index) { |