• mlippautz's avatar
    [heap] Modernize all *Page iterators to be proper C++ iterators · 4244b989
    mlippautz authored
    As part of the page type unification also unify page iterators. Iterating
    over a space works the same for all spaces now (new, old, lo).
    
    Iterating over pages of a space follows now the regular C++ iterator pattern:
    - for (auto it = space->begin(); it != space->end(); ++it) {}
    - for (Page* p : *space) {}
    
    GC only: Loop supporting unlinking/freeing of a Page on the fly:
      for (auto it = space->begin(); != space->end();) {
        Page* p = *(it++);
        p->Unlink();
      }
    
    For iteration of a range of new space pages use NewSpacePageRange which
    also verifies that the range is actually a proper new space page range.
    
    BUG=chromium:581412
    LOG=N
    
    Review-Url: https://codereview.chromium.org/2088223002
    Cr-Commit-Position: refs/heads/master@{#37210}
    4244b989
Name
Last commit
Last update
..
benchmarks Loading commit data...
cctest Loading commit data...
fuzzer Loading commit data...
intl Loading commit data...
js-perf-test Loading commit data...
memory Loading commit data...
message Loading commit data...
mjsunit Loading commit data...
mozilla Loading commit data...
preparser Loading commit data...
promises-aplus Loading commit data...
simdjs Loading commit data...
test262 Loading commit data...
unittests Loading commit data...
webkit Loading commit data...
BUILD.gn Loading commit data...
bot_default.gyp Loading commit data...
bot_default.isolate Loading commit data...
default.gyp Loading commit data...
default.isolate Loading commit data...
ignition.gyp Loading commit data...
ignition.isolate Loading commit data...
optimize_for_size.gyp Loading commit data...
optimize_for_size.isolate Loading commit data...
perf.gyp Loading commit data...
perf.isolate Loading commit data...