@@ -4,7 +4,7 @@ var createIteratorConstructor = require('../internals/iterator-create-constructo
4
4
var createIterResultObject = require ( '../internals/create-iter-result-object' ) ;
5
5
var isNullOrUndefined = require ( '../internals/is-null-or-undefined' ) ;
6
6
var isObject = require ( '../internals/is-object' ) ;
7
- var defineProperties = require ( '../internals/object- define-properties' ) . f ;
7
+ var defineBuiltInAccessor = require ( '../internals/define-built-in-accessor' ) ;
8
8
var DESCRIPTORS = require ( '../internals/descriptors' ) ;
9
9
10
10
var INCORRECT_RANGE = 'Incorrect Iterator.range arguments' ;
@@ -53,7 +53,7 @@ var $RangeIterator = createIteratorConstructor(function NumericRangeIterator(sta
53
53
start : start ,
54
54
end : end ,
55
55
step : step ,
56
- inclusiveEnd : inclusiveEnd ,
56
+ inclusive : inclusiveEnd ,
57
57
hitsEnd : hitsEnd ,
58
58
currentCount : zero ,
59
59
zero : zero
@@ -72,7 +72,7 @@ var $RangeIterator = createIteratorConstructor(function NumericRangeIterator(sta
72
72
var step = state . step ;
73
73
var currentYieldingValue = start + ( step * state . currentCount ++ ) ;
74
74
if ( currentYieldingValue === end ) state . hitsEnd = true ;
75
- var inclusiveEnd = state . inclusiveEnd ;
75
+ var inclusiveEnd = state . inclusive ;
76
76
var endCondition ;
77
77
if ( end > start ) {
78
78
endCondition = inclusiveEnd ? currentYieldingValue > end : currentYieldingValue >= end ;
@@ -85,25 +85,22 @@ var $RangeIterator = createIteratorConstructor(function NumericRangeIterator(sta
85
85
} return createIterResultObject ( currentYieldingValue , false ) ;
86
86
} ) ;
87
87
88
- var getter = function ( fn ) {
89
- return { get : fn , set : function ( ) { /* empty */ } , configurable : true , enumerable : false } ;
88
+ var addGetter = function ( key ) {
89
+ defineBuiltInAccessor ( $RangeIterator . prototype , key , {
90
+ get : function ( ) {
91
+ return getInternalState ( this ) [ key ] ;
92
+ } ,
93
+ set : function ( ) { /* empty */ } ,
94
+ configurable : true ,
95
+ enumerable : false
96
+ } ) ;
90
97
} ;
91
98
92
99
if ( DESCRIPTORS ) {
93
- defineProperties ( $RangeIterator . prototype , {
94
- start : getter ( function ( ) {
95
- return getInternalState ( this ) . start ;
96
- } ) ,
97
- end : getter ( function ( ) {
98
- return getInternalState ( this ) . end ;
99
- } ) ,
100
- inclusive : getter ( function ( ) {
101
- return getInternalState ( this ) . inclusiveEnd ;
102
- } ) ,
103
- step : getter ( function ( ) {
104
- return getInternalState ( this ) . step ;
105
- } )
106
- } ) ;
100
+ addGetter ( 'start' ) ;
101
+ addGetter ( 'end' ) ;
102
+ addGetter ( 'inclusive' ) ;
103
+ addGetter ( 'step' ) ;
107
104
}
108
105
109
106
module . exports = $RangeIterator ;
0 commit comments