// Class: lime._internal.unifill.InternalEncodingIter

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__$internal_unifill_InternalEncoding() {return require("./../../../lime/_internal/unifill/InternalEncoding");}

// Constructor

var InternalEncodingIter = function(s,beginIndex,endIndex) {
	this.i = 0;
	this.string = s;
	this.index = beginIndex;
	this.endIndex = endIndex;
}

// Meta

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

// Init



// Statics




// Export

exports.default = InternalEncodingIter;