Index: runtime/vm/object.h |
=================================================================== |
--- runtime/vm/object.h (revision 11699) |
+++ runtime/vm/object.h (working copy) |
@@ -648,6 +648,11 @@ |
} |
void set_is_interface() const; |
+ bool is_abstract() const { |
+ return AbstractBit::decode(raw_ptr()->state_bits_); |
+ } |
+ void set_is_abstract() const; |
+ |
bool is_finalized() const { |
return StateBits::decode(raw_ptr()->state_bits_) == RawClass::kFinalized; |
} |
@@ -716,11 +721,13 @@ |
enum { |
kConstBit = 1, |
kInterfaceBit = 2, |
- kStateTagBit = 3, |
+ kAbstractBit = 3, |
+ kStateTagBit = 4, |
kStateTagSize = 2, |
}; |
class ConstBit : public BitField<bool, kConstBit, 1> {}; |
class InterfaceBit : public BitField<bool, kInterfaceBit, 1> {}; |
+ class AbstractBit : public BitField<bool, kAbstractBit, 1> {}; |
class StateBits : public BitField<RawClass::ClassState, |
kStateTagBit, kStateTagSize> {}; // NOLINT |