| Index: src/string-iterator.js
|
| diff --git a/src/string-iterator.js b/src/string-iterator.js
|
| index bb392ef10efbaa908e89d466faadfbcd4b68d14b..3d3273e298405043404f60a0bbbfa07f3ccce689 100644
|
| --- a/src/string-iterator.js
|
| +++ b/src/string-iterator.js
|
| @@ -11,9 +11,12 @@
|
| // -------------------------------------------------------------------
|
| // Imports
|
|
|
| -var GlobalString = global.String;
|
| -
|
| var ArrayIteratorCreateResultObject;
|
| +var GlobalString = global.String;
|
| +var StringIteratorIteratedStringSymbol =
|
| + utils.GetPrivateSymbol("string_iterator_iterated_string_symbol");
|
| +var StringIteratorNextIndexSymbol =
|
| + utils.GetPrivateSymbol("string_iterator_next_index_symbol");
|
|
|
| utils.Import(function(from) {
|
| ArrayIteratorCreateResultObject = from.ArrayIteratorCreateResultObject;
|
| @@ -21,11 +24,6 @@ utils.Import(function(from) {
|
|
|
| // -------------------------------------------------------------------
|
|
|
| -var stringIteratorIteratedStringSymbol =
|
| - GLOBAL_PRIVATE("StringIterator#iteratedString");
|
| -var stringIteratorNextIndexSymbol = GLOBAL_PRIVATE("StringIterator#next");
|
| -
|
| -
|
| function StringIterator() {}
|
|
|
|
|
| @@ -33,8 +31,8 @@ function StringIterator() {}
|
| function CreateStringIterator(string) {
|
| var s = TO_STRING_INLINE(string);
|
| var iterator = new StringIterator;
|
| - SET_PRIVATE(iterator, stringIteratorIteratedStringSymbol, s);
|
| - SET_PRIVATE(iterator, stringIteratorNextIndexSymbol, 0);
|
| + SET_PRIVATE(iterator, StringIteratorIteratedStringSymbol, s);
|
| + SET_PRIVATE(iterator, StringIteratorNextIndexSymbol, 0);
|
| return iterator;
|
| }
|
|
|
| @@ -43,21 +41,21 @@ function CreateStringIterator(string) {
|
| function StringIteratorNext() {
|
| var iterator = TO_OBJECT(this);
|
|
|
| - if (!HAS_DEFINED_PRIVATE(iterator, stringIteratorNextIndexSymbol)) {
|
| + if (!HAS_DEFINED_PRIVATE(iterator, StringIteratorNextIndexSymbol)) {
|
| throw MakeTypeError(kIncompatibleMethodReceiver,
|
| 'String Iterator.prototype.next');
|
| }
|
|
|
| - var s = GET_PRIVATE(iterator, stringIteratorIteratedStringSymbol);
|
| + var s = GET_PRIVATE(iterator, StringIteratorIteratedStringSymbol);
|
| if (IS_UNDEFINED(s)) {
|
| return ArrayIteratorCreateResultObject(UNDEFINED, true);
|
| }
|
|
|
| - var position = GET_PRIVATE(iterator, stringIteratorNextIndexSymbol);
|
| + var position = GET_PRIVATE(iterator, StringIteratorNextIndexSymbol);
|
| var length = TO_UINT32(s.length);
|
|
|
| if (position >= length) {
|
| - SET_PRIVATE(iterator, stringIteratorIteratedStringSymbol,
|
| + SET_PRIVATE(iterator, StringIteratorIteratedStringSymbol,
|
| UNDEFINED);
|
| return ArrayIteratorCreateResultObject(UNDEFINED, true);
|
| }
|
| @@ -74,7 +72,7 @@ function StringIteratorNext() {
|
| }
|
| }
|
|
|
| - SET_PRIVATE(iterator, stringIteratorNextIndexSymbol, position);
|
| + SET_PRIVATE(iterator, StringIteratorNextIndexSymbol, position);
|
|
|
| return ArrayIteratorCreateResultObject(resultString, false);
|
| }
|
|
|