'use strict';
var $    = require('./$')
  , ITER = require('./$.uid').safe('iter');

require('./$.iter-define')(Number, 'Number', function(iterated){
  $.set(this, ITER, {l: $.toLength(iterated), i: 0});
}, function(){
  var iter = this[ITER]
    , i    = iter.i++
    , done = i >= iter.l;
  return {done: done, value: done ? undefined : i};
});