• bmeurer's avatar
    [es6] Introduce a dedicated JSIteratorResult type. · 72bc4b5c
    bmeurer authored
    Use a single JSIteratorResult type for all implementation provided
    iterator results (i.e. the String, Array and collection iterators,
    and also for generators).  This removes one source of unnecessary
    polymorphism in for-of loops.  It is accomplished by a new intrinsic
    %_CreateIterResultObject() that should be used to create iterator
    result objects from JavaScript builtins (there's a matching factory
    method for C++ code).
    
    Also restructure the %StringIteratorPrototype%.next() and
    %ArrayIteratorPrototype%.next() functions to be a bit more friendly
    to optimizing compilers.
    
    R=ishell@chromium.org
    
    Review URL: https://codereview.chromium.org/1302173007
    
    Cr-Commit-Position: refs/heads/master@{#30557}
    72bc4b5c
collection-iterator.js 4.51 KB