PATH:
usr
/
local
/
lib
/
node_modules
/
gulp
/
node_modules
/
es6-iterator
// Thanks @mathiasbynens // http://mathiasbynens.be/notes/javascript-unicode#iterating-over-symbols "use strict"; var setPrototypeOf = require("es5-ext/object/set-prototype-of") , d = require("d") , Symbol = require("es6-symbol") , Iterator = require("./"); var defineProperty = Object.defineProperty, StringIterator; StringIterator = module.exports = function (str) { if (!(this instanceof StringIterator)) throw new TypeError("Constructor requires 'new'"); str = String(str); Iterator.call(this, str); defineProperty(this, "__length__", d("", str.length)); }; if (setPrototypeOf) setPrototypeOf(StringIterator, Iterator); // Internal %ArrayIteratorPrototype% doesn't expose its constructor delete StringIterator.prototype.constructor; StringIterator.prototype = Object.create(Iterator.prototype, { _next: d(function () { if (!this.__list__) return undefined; if (this.__nextIndex__ < this.__length__) return this.__nextIndex__++; this._unBind(); return undefined; }), _resolve: d(function (i) { var char = this.__list__[i], code; if (this.__nextIndex__ === this.__length__) return char; code = char.charCodeAt(0); if (code >= 0xd800 && code <= 0xdbff) return char + this.__list__[this.__nextIndex__++]; return char; }) }); defineProperty(StringIterator.prototype, Symbol.toStringTag, d("c", "String Iterator"));
[-] array.js
[edit]
[-] CHANGES
[edit]
[+]
#
[-] valid-iterable.js
[edit]
[+]
..
[-] .npmignore
[edit]
[-] package.json
[edit]
[-] string.js
[edit]
[-] for-of.js
[edit]
[-] is-iterable.js
[edit]
[-] get.js
[edit]
[-] .editorconfig
[edit]
[-] index.js
[edit]
[-] README.md
[edit]
[-] appveyor.yml
[edit]
[+]
test
[-] LICENSE
[edit]
[-] CHANGELOG.md
[edit]