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); |
} |