OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef V8_OBJECTS_H_ | 5 #ifndef V8_OBJECTS_H_ |
6 #define V8_OBJECTS_H_ | 6 #define V8_OBJECTS_H_ |
7 | 7 |
8 #include <iosfwd> | 8 #include <iosfwd> |
9 | 9 |
10 #include "src/allocation.h" | 10 #include "src/allocation.h" |
(...skipping 9633 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
9644 | 9644 |
9645 typedef FixedBodyDescriptor<kHandlerOffset, | 9645 typedef FixedBodyDescriptor<kHandlerOffset, |
9646 kConstructTrapOffset + kPointerSize, | 9646 kConstructTrapOffset + kPointerSize, |
9647 kSize> BodyDescriptor; | 9647 kSize> BodyDescriptor; |
9648 | 9648 |
9649 private: | 9649 private: |
9650 DISALLOW_IMPLICIT_CONSTRUCTORS(JSFunctionProxy); | 9650 DISALLOW_IMPLICIT_CONSTRUCTORS(JSFunctionProxy); |
9651 }; | 9651 }; |
9652 | 9652 |
9653 | 9653 |
9654 class JSCollection : public JSObject { | 9654 class JSCollection: public JSObject { |
9655 public: | 9655 public: |
9656 // [table]: the backing hash table | 9656 // [table]: the backing hash table |
9657 DECL_ACCESSORS(table, Object) | 9657 DECL_ACCESSORS(table, Object) |
9658 | 9658 |
9659 static const int kTableOffset = JSObject::kHeaderSize; | 9659 static const int kTableOffset = JSObject::kHeaderSize; |
9660 static const int kSize = kTableOffset + kPointerSize; | 9660 static const int kSize = kTableOffset + kPointerSize; |
9661 | 9661 |
9662 private: | 9662 private: |
9663 DISALLOW_IMPLICIT_CONSTRUCTORS(JSCollection); | 9663 DISALLOW_IMPLICIT_CONSTRUCTORS(JSCollection); |
9664 }; | 9664 }; |
9665 | 9665 |
9666 | 9666 |
9667 // The JSSet describes EcmaScript Harmony sets | 9667 // The JSSet describes EcmaScript Harmony sets |
9668 class JSSet : public JSCollection { | 9668 class JSSet: public JSCollection { |
9669 public: | 9669 public: |
9670 DECLARE_CAST(JSSet) | 9670 DECLARE_CAST(JSSet) |
9671 | 9671 |
9672 static void Initialize(Handle<JSSet> set, Isolate* isolate); | 9672 static void Initialize(Handle<JSSet> set, Isolate* isolate); |
9673 static void Clear(Handle<JSSet> set); | 9673 static void Clear(Handle<JSSet> set); |
9674 | 9674 |
9675 // Dispatched behavior. | 9675 // Dispatched behavior. |
9676 DECLARE_PRINTER(JSSet) | 9676 DECLARE_PRINTER(JSSet) |
9677 DECLARE_VERIFIER(JSSet) | 9677 DECLARE_VERIFIER(JSSet) |
9678 | 9678 |
9679 private: | 9679 private: |
9680 DISALLOW_IMPLICIT_CONSTRUCTORS(JSSet); | 9680 DISALLOW_IMPLICIT_CONSTRUCTORS(JSSet); |
9681 }; | 9681 }; |
9682 | 9682 |
9683 | 9683 |
9684 // The JSMap describes EcmaScript Harmony maps | 9684 // The JSMap describes EcmaScript Harmony maps |
9685 class JSMap : public JSCollection { | 9685 class JSMap: public JSCollection { |
9686 public: | 9686 public: |
9687 DECLARE_CAST(JSMap) | 9687 DECLARE_CAST(JSMap) |
9688 | 9688 |
9689 static void Initialize(Handle<JSMap> map, Isolate* isolate); | 9689 static void Initialize(Handle<JSMap> map, Isolate* isolate); |
9690 static void Clear(Handle<JSMap> map); | 9690 static void Clear(Handle<JSMap> map); |
9691 | 9691 |
9692 // Dispatched behavior. | 9692 // Dispatched behavior. |
9693 DECLARE_PRINTER(JSMap) | 9693 DECLARE_PRINTER(JSMap) |
9694 DECLARE_VERIFIER(JSMap) | 9694 DECLARE_VERIFIER(JSMap) |
9695 | 9695 |
(...skipping 1063 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
10759 } | 10759 } |
10760 return value; | 10760 return value; |
10761 } | 10761 } |
10762 }; | 10762 }; |
10763 | 10763 |
10764 | 10764 |
10765 } // NOLINT, false-positive due to second-order macros. | 10765 } // NOLINT, false-positive due to second-order macros. |
10766 } // NOLINT, false-positive due to second-order macros. | 10766 } // NOLINT, false-positive due to second-order macros. |
10767 | 10767 |
10768 #endif // V8_OBJECTS_H_ | 10768 #endif // V8_OBJECTS_H_ |
OLD | NEW |