lost+found/src/interfaces/enumerator_.js
function _gpfArrayEnumerator (array) {
    var pos = -1;
    return {
        reset: function () {
            pos = -1;
        },
        moveNext: function (eventsHandler) {
            var result;
            ++pos;
            result = pos < array.length;
            if (!result && eventsHandler) {
                _gpfEventsFire.call(this, _GPF_EVENT_END_OF_DATA, {}, eventsHandler);
            }
            return result;
        },
        current: function () {
            return array[pos];
        }
    };
}
function _gpfArrayEnumerator (array) {
    var pos = -1;
    return {
        reset: function () {
            pos = -1;
        },
        moveNext: function (eventsHandler) {
            var result;
            ++pos;
            result = pos < array.length;
            if (!result && eventsHandler) {
                _gpfEventsFire.call(this, _GPF_EVENT_END_OF_DATA, {}, eventsHandler);
            }
            return result;
        },
        current: function () {
            return array[pos];
        }
    };
}
function _gpfArrayEnumerator ( array ) { var pos = - 1 ; return { reset : function ( ) { pos = - 1 ; } , moveNext : function ( eventsHandler ) { var result ; ++ pos ; result = pos < array . length ; if ( ! result && eventsHandler ) { _gpfEventsFire . call ( this , _GPF_EVENT_END_OF_DATA , { } , eventsHandler ) ; } return result ; } , current : function ( ) { return array [ pos ] ; } } ; }
Builds an enumerable interface based on an array

@param {Object[]} array Base of the enumeration
@return {Object} Object implementing the IEnumerable interface
Builds an enumerable interface based on an array