OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2011 Google Inc. All rights reserved. | 2 * Copyright (C) 2011 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
50 const char* GetGroupLabel() override; | 50 const char* GetGroupLabel() override; |
51 const char* GetLabel() override; | 51 const char* GetLabel() override; |
52 intptr_t GetElementCount() override; | 52 intptr_t GetElementCount() override; |
53 intptr_t GetEquivalenceClass() override; | 53 intptr_t GetEquivalenceClass() override; |
54 | 54 |
55 static v8::RetainedObjectInfo* createRetainedDOMInfo( | 55 static v8::RetainedObjectInfo* createRetainedDOMInfo( |
56 uint16_t classId, | 56 uint16_t classId, |
57 v8::Local<v8::Value> wrapper); | 57 v8::Local<v8::Value> wrapper); |
58 | 58 |
59 private: | 59 private: |
60 // V8 guarantees to keep RetainedObjectInfos alive only during a GC or heap sn
apshotting round, when renderer | 60 // V8 guarantees to keep RetainedObjectInfos alive only during a GC or heap |
61 // doesn't get control. This allows us to use raw pointers. | 61 // snapshotting round, when renderer doesn't get control. This allows us to |
| 62 // use raw pointers. |
62 UntracedMember<Node> m_root; | 63 UntracedMember<Node> m_root; |
63 }; | 64 }; |
64 | 65 |
65 class ActiveDOMObjectsInfo final : public RetainedObjectInfo { | 66 class ActiveDOMObjectsInfo final : public RetainedObjectInfo { |
66 public: | 67 public: |
67 explicit ActiveDOMObjectsInfo(int numberOfObjectsWithPendingActivity); | 68 explicit ActiveDOMObjectsInfo(int numberOfObjectsWithPendingActivity); |
68 ~ActiveDOMObjectsInfo() override; | 69 ~ActiveDOMObjectsInfo() override; |
69 void Dispose() override; | 70 void Dispose() override; |
70 bool IsEquivalent(v8::RetainedObjectInfo* other) override; | 71 bool IsEquivalent(v8::RetainedObjectInfo* other) override; |
71 intptr_t GetHash() override; | 72 intptr_t GetHash() override; |
72 const char* GetGroupLabel() override; | 73 const char* GetGroupLabel() override; |
73 const char* GetLabel() override; | 74 const char* GetLabel() override; |
74 intptr_t GetElementCount() override; | 75 intptr_t GetElementCount() override; |
75 intptr_t GetEquivalenceClass() override; | 76 intptr_t GetEquivalenceClass() override; |
76 | 77 |
77 private: | 78 private: |
78 int m_numberOfObjectsWithPendingActivity; | 79 int m_numberOfObjectsWithPendingActivity; |
79 }; | 80 }; |
80 | 81 |
81 } // namespace blink | 82 } // namespace blink |
82 | 83 |
83 #endif // RetainedDOMInfo_h | 84 #endif // RetainedDOMInfo_h |
OLD | NEW |