// Class: lime.text.unifill.CodePointIter

var $global = typeof window != "undefined" ? window : typeof global != "undefined" ? global : typeof self != "undefined" ? self : this

$global.Object.defineProperty(exports, "__esModule", {value: true});

var __map_reserved = {};

// Imports

var $hxClasses = require("./../../../hxClasses_stub").default;
var $import = require("./../../../import_stub").default;
function lime_text_unifill_InternalEncoding() {return require("./../../../lime/text/unifill/InternalEncoding");}

// Constructor

var CodePointIter = function(s) {
	this.i = 0;
	this.string = s;
	this.index = 0;
	this.endIndex = s.length;
}

// Meta

CodePointIter.__name__ = ["lime","text","unifill","CodePointIter"];
CodePointIter.prototype = {
	hasNext: function() {
		return this.index < this.endIndex;
	},
	next: function() {
		this.i = this.index;
		this.index += (lime_text_unifill_InternalEncoding().default).codePointWidthAt(this.string,this.index);
		return (lime_text_unifill_InternalEncoding().default).codePointAt(this.string,this.i);
	}
};
CodePointIter.prototype.__class__ = CodePointIter.prototype.constructor = $hxClasses["lime.text.unifill.CodePointIter"] = CodePointIter;

// Init



// Statics




// Export

exports.default = CodePointIter;