| Index: src/heap/objects-visiting.h
|
| diff --git a/src/heap/objects-visiting.h b/src/heap/objects-visiting.h
|
| index c9d1c05c93c297cefa0aba3bbb193b33c62f870f..c578a42d642697e9355a569d326a33dddc942d2d 100644
|
| --- a/src/heap/objects-visiting.h
|
| +++ b/src/heap/objects-visiting.h
|
| @@ -395,9 +395,16 @@ VisitorDispatchTable<typename StaticMarkingVisitor<StaticVisitor>::Callback>
|
| template <typename ResultType, typename ConcreteVisitor>
|
| class HeapVisitor : public ObjectVisitor {
|
| public:
|
| - ResultType IterateBody(HeapObject* object);
|
| + ResultType Visit(HeapObject* object);
|
|
|
| protected:
|
| + // A guard predicate for visiting the object.
|
| + // If it returns false then the default implementations of the Visit*
|
| + // functions bailout from iterating the object pointers.
|
| + virtual bool ShouldVisit(HeapObject* object);
|
| + // A callback for visiting the map pointer in the object header.
|
| + virtual void VisitMapPointer(HeapObject* host, HeapObject** map);
|
| +
|
| #define VISIT(type) virtual ResultType Visit##type(Map* map, type* object);
|
| TYPED_VISITOR_ID_LIST(VISIT)
|
| #undef VISIT
|
|
|