dist/node/core.js
function Collection(obj) {
	this._init();

	if ((0, _types.isString)(obj)) {
		this.data = obj.split('');
	} else if ((0, _types.isNumber)(obj)) {
		let i = isFinite(obj) ? Math.abs(obj) : false,
		    done = false,
		    value;

		this.p.use = 'for of';
		this.data = {
			next: () => {
				done = i === false ? done : done || !i--;
				return { done, value };
			},

			throw(err) {
				throw err;
			},

			return: v => {
				done = true;
				value = v;
			}
		};
	} else {
		this.data = (0, _types.isObjectInstance)(obj) ? (0, _gcc.any)(obj) : [];
	}
}
function Collection(obj) {
	this._init();

	if ((0, _types.isString)(obj)) {
		this.data = obj.split('');
	} else if ((0, _types.isNumber)(obj)) {
		let i = isFinite(obj) ? Math.abs(obj) : false,
		    done = false,
		    value;

		this.p.use = 'for of';
		this.data = {
			next: () => {
				done = i === false ? done : done || !i--;
				return { done, value };
			},

			throw(err) {
				throw err;
			},

			return: v => {
				done = true;
				value = v;
			}
		};
	} else {
		this.data = (0, _types.isObjectInstance)(obj) ? (0, _gcc.any)(obj) : [];
	}
}
function Collection ( obj ) { this . _init ( ) ; if ( ( 0 , _types . isString ) ( obj ) ) { this . data = obj . split ( '' ) ; } else if ( ( 0 , _types . isNumber ) ( obj ) ) { let i = isFinite ( obj ) ? Math . abs ( obj ) : false , done = false , value ; this . p . use = 'for of' ; this . data = { next : ( ) => { done = i === false ? done : done || ! i -- ; return { done , value } ; } , throw ( err ) { throw err ; } , return : v => { done = true ; value = v ; } } ; } else { this . data = ( 0 , _types . isObjectInstance ) ( obj ) ? ( 0 , _gcc . any ) ( obj ) : [ ] ; } }
Collection constructor

@constructor
@implements {$$Collection}
@param {$$CollectionType} obj
Collection constructor