| 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 |