OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2013 Google Inc. All rights reserved. | 2 * Copyright (C) 2013 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 300 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
311 virtual void registerWeakMembers(const void*, const void*, WeakCallback) = 0
; | 311 virtual void registerWeakMembers(const void*, const void*, WeakCallback) = 0
; |
312 using VisitorHelper<Visitor>::registerWeakMembers; | 312 using VisitorHelper<Visitor>::registerWeakMembers; |
313 | 313 |
314 virtual void registerWeakTable(const void*, EphemeronCallback, EphemeronCall
back) = 0; | 314 virtual void registerWeakTable(const void*, EphemeronCallback, EphemeronCall
back) = 0; |
315 #if ENABLE(ASSERT) | 315 #if ENABLE(ASSERT) |
316 virtual bool weakTableRegistered(const void*) = 0; | 316 virtual bool weakTableRegistered(const void*) = 0; |
317 #endif | 317 #endif |
318 | 318 |
319 virtual bool ensureMarked(const void*) = 0; | 319 virtual bool ensureMarked(const void*) = 0; |
320 | 320 |
| 321 virtual void registerWeakCellWithCallback(void**, WeakCallback) = 0; |
| 322 |
321 inline MarkingMode getMarkingMode() const { return m_markingMode; } | 323 inline MarkingMode getMarkingMode() const { return m_markingMode; } |
322 | 324 |
323 protected: | 325 protected: |
324 Visitor(ThreadState*, MarkingMode); | 326 Visitor(ThreadState*, MarkingMode); |
325 | 327 |
326 virtual void registerWeakCellWithCallback(void**, WeakCallback) = 0; | |
327 | |
328 private: | 328 private: |
329 static Visitor* fromHelper(VisitorHelper<Visitor>* helper) { return static_c
ast<Visitor*>(helper); } | 329 static Visitor* fromHelper(VisitorHelper<Visitor>* helper) { return static_c
ast<Visitor*>(helper); } |
330 | 330 |
331 ThreadState* m_state; | 331 ThreadState* m_state; |
332 const MarkingMode m_markingMode; | 332 const MarkingMode m_markingMode; |
333 }; | 333 }; |
334 | 334 |
335 } // namespace blink | 335 } // namespace blink |
336 | 336 |
337 #endif // Visitor_h | 337 #endif // Visitor_h |
OLD | NEW |