rem: range: function (/* [start,] stop[, step] */) { /***  Return an iterator containing an arithmetic progression of integers. range(i, j) returns iter([i, i + 1, i + 2, ..., j - 1]); start (!) defaults to 0.  When step is given, it specifies the increment (or decrement).  For example, range(4) returns iter([0, 1, 2, 3]).  The end point is omitted!  These are exactly the valid elements for an array of 4 elements.  ***/ var start = 0; var stop = 0; var step = 1; if (arguments.length == 1) { stop = arguments[0]; } else if (arguments.length == 2) { start = arguments[0]; stop = arguments[1]; } else if (arguments.length == 3) { start = arguments[0]; stop = arguments[1]; step = arguments[2]; } else { throw new TypeError("range() takes 1, 2, or 3 arguments!"); } if (step == 0) { throw new TypeError("range() step must not be 0"); } return { next: function () { if ((step > 0 && start >= stop) || (step < 0 && start <= stop)) { throw MochiKit.Iter.StopIteration; } var rval = start; start += step; return rval; }, repr: function () { return "range(" + [start, stop, step].join(", ") + ")"; }, toString: MochiKit.Base.forward("repr") }; }, 
add: },range:function(){ var _160=0; var stop=0; var step=1; if(arguments.length==1){ stop=arguments[0]; }else{ if(arguments.length==2){ _160=arguments[0]; stop=arguments[1]; }else{ if(arguments.length==3){ _160=arguments[0]; stop=arguments[1]; step=arguments[2]; }else{ throw new TypeError("range() takes 1, 2, or 3 arguments!"); } } } if(step==0){ throw new TypeError("range() step must not be 0"); } return {next:function(){ if((step>0&&_160>=stop)||(step<0&&_160<=stop)){ throw MochiKit.Iter.StopIteration; } var rval=_160; _160+=step; return rval; },repr:function(){ return "range("+[_160,stop,step].join(", ")+")"; },toString:MochiKit.Base.forward("repr")}; },sum:function(_161,_162){ 
context:     range: function (/* [start,] stop[, step] */) {        /***        Return an iterator containing an arithmetic progression of integers.        range(i, j) returns iter([i, i + 1, i + 2, ..., j - 1]);        start (!) defaults to 0.  When step is given, it specifies the        increment (or decrement).  For example, range(4) returns        iter([0, 1, 2, 3]).  The end point is omitted!  These are exactly the        valid elements for an array of 4 elements.        ***/        var start = 0;        var stop = 0;        var step = 1;        if (arguments.length == 1) {            stop = arguments[0];        } else if (arguments.length == 2) {            start = arguments[0];            stop = arguments[1];        } else if (arguments.length == 3) {            start = arguments[0];            stop = arguments[1];            step = arguments[2];        } else {            throw new TypeError("range() takes 1, 2, or 3 arguments!");        }        if (step == 0) {            throw new TypeError("range() step must not be 0");        }        return {            next: function () {                if ((step > 0 && start >= stop) || (step < 0 && start <= stop)) {                    throw MochiKit.Iter.StopIteration;                }                var rval = start;                start += step;                return rval;            },            repr: function () {                return "range(" + [start, stop, step].join(", ") + ")";            },            toString: MochiKit.Base.forward("repr")        };    },
meta: 8607	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/8607/ad067b3f5d648d6df90ec6fb2b79f0027612a307/MochiKit.js/buggy/trunk/lib/MochiKit.js