Chromium Code Reviews| Index: src/heap/spaces.h |
| diff --git a/src/heap/spaces.h b/src/heap/spaces.h |
| index 41e0727a3fbe9a634dff2bde325fd996b9951de9..a1b93c29d9c56adf15b78da9835580bcd282fdf1 100644 |
| --- a/src/heap/spaces.h |
| +++ b/src/heap/spaces.h |
| @@ -935,6 +935,8 @@ class Space : public Malloced { |
| } |
| } |
| + virtual std::unique_ptr<ObjectIterator> GetObjectIterator() = 0; |
| + |
| void AccountCommitted(intptr_t bytes) { |
| DCHECK_GE(bytes, 0); |
| committed_ += bytes; |
| @@ -2146,6 +2148,8 @@ class PagedSpace : public Space { |
| // using the high water mark. |
| void ShrinkImmortalImmovablePages(); |
| + std::unique_ptr<ObjectIterator> GetObjectIterator() override; |
| + |
| protected: |
| // PagedSpaces that should be included in snapshots have different, i.e., |
| // smaller, initial pages. |
| @@ -2344,6 +2348,8 @@ class SemiSpace : public Space { |
| iterator begin() { return iterator(anchor_.next_page()); } |
| iterator end() { return iterator(anchor()); } |
| + std::unique_ptr<ObjectIterator> GetObjectIterator() override; |
|
Michael Lippautz
2016/09/27 13:53:05
While you are here, can you move this line and the
ulan
2016/09/27 14:10:53
Done.
|
| + |
| private: |
| void RewindPages(Page* start, int num_pages); |
| @@ -2675,6 +2681,8 @@ class NewSpace : public Space { |
| iterator begin() { return to_space_.begin(); } |
| iterator end() { return to_space_.end(); } |
| + std::unique_ptr<ObjectIterator> GetObjectIterator() override; |
| + |
| private: |
| // Update allocation info to match the current to-space page. |
| void UpdateAllocationInfo(); |
| @@ -2888,6 +2896,8 @@ class LargeObjectSpace : public Space { |
| iterator begin() { return iterator(first_page_); } |
| iterator end() { return iterator(nullptr); } |
| + std::unique_ptr<ObjectIterator> GetObjectIterator() override; |
| + |
| #ifdef VERIFY_HEAP |
| virtual void Verify(); |
| #endif |