Please enable JavaScript to use RhodeCode Enterprise
Commit Description:
submission report
Commit Description:
submission report
'use strict' ;
var GetIntrinsic = require ( '../GetIntrinsic' );
var $TypeError = GetIntrinsic ( '%TypeError%' );
var getIteratorMethod = require ( '../helpers/getIteratorMethod' );
var AdvanceStringIndex = require ( './AdvanceStringIndex' );
var Call = require ( './Call' );
var GetMethod = require ( './GetMethod' );
var IsArray = require ( './IsArray' );
var Type = require ( './Type' );
// https://ecma-international.org/ecma-262/6.0/#sec-getiterator
module . exports = function GetIterator ( obj , method ) {
var actualMethod = method ;
if ( arguments . length < 2 ) {
actualMethod = getIteratorMethod (
{
AdvanceStringIndex : AdvanceStringIndex ,
GetMethod : GetMethod ,
IsArray : IsArray ,
Type : Type
},
obj
);
}
var iterator = Call ( actualMethod , obj );
if ( Type ( iterator ) !== 'Object' ) {
throw new $TypeError ( 'iterator must return an object' );
}
return iterator ;
};
Site-wide shortcuts
/
Use quick search box
g h
Goto home page
g g
Goto my private gists page
g G
Goto my public gists page
n r
New repository page
n g
New gist page
Repositories
g s
Goto summary page
g c
Goto changelog page
g f
Goto files page
g F
Goto files page with file search activated
g p
Goto pull requests page
g o
Goto repository settings
g O
Goto repository permissions settings