717 void verify_rem_set(VerifyOption vo, bool *failures) const; |
717 void verify_rem_set(VerifyOption vo, bool *failures) const; |
718 void verify_rem_set() const; |
718 void verify_rem_set() const; |
719 }; |
719 }; |
720 |
720 |
721 // HeapRegionClosure is used for iterating over regions. |
721 // HeapRegionClosure is used for iterating over regions. |
722 // Terminates the iteration when the "do_heap_region" method returns "true". |
722 // Terminates the iteration when the "doHeapRegion" method returns "true". |
723 class HeapRegionClosure : public StackObj { |
723 class HeapRegionClosure : public StackObj { |
724 friend class HeapRegionManager; |
724 friend class HeapRegionManager; |
725 friend class G1CollectionSet; |
725 friend class G1CollectionSet; |
726 |
726 |
727 bool _is_complete; |
727 bool _complete; |
728 void set_incomplete() { _is_complete = false; } |
728 void incomplete() { _complete = false; } |
729 |
729 |
730 public: |
730 public: |
731 HeapRegionClosure(): _is_complete(true) {} |
731 HeapRegionClosure(): _complete(true) {} |
732 |
732 |
733 // Typically called on each region until it returns true. |
733 // Typically called on each region until it returns true. |
734 virtual bool do_heap_region(HeapRegion* r) = 0; |
734 virtual bool doHeapRegion(HeapRegion* r) = 0; |
735 |
735 |
736 // True after iteration if the closure was applied to all heap regions |
736 // True after iteration if the closure was applied to all heap regions |
737 // and returned "false" in all cases. |
737 // and returned "false" in all cases. |
738 bool is_complete() { return _is_complete; } |
738 bool complete() { return _complete; } |
739 }; |
739 }; |
740 |
740 |
741 #endif // SHARE_VM_GC_G1_HEAPREGION_HPP |
741 #endif // SHARE_VM_GC_G1_HEAPREGION_HPP |