http://www.mediawiki.org/wiki/Special:Code/MediaWiki/97873

Revision: 97873
Author:   tparscal
Date:     2011-09-23 00:27:41 +0000 (Fri, 23 Sep 2011)
Log Message:
-----------
Added getCoverage method

Modified Paths:
--------------
    trunk/parsers/wikidom/lib/synth/bases/es.AggregateArray.js

Modified: trunk/parsers/wikidom/lib/synth/bases/es.AggregateArray.js
===================================================================
--- trunk/parsers/wikidom/lib/synth/bases/es.AggregateArray.js  2011-09-23 
00:25:06 UTC (rev 97872)
+++ trunk/parsers/wikidom/lib/synth/bases/es.AggregateArray.js  2011-09-23 
00:27:41 UTC (rev 97873)
@@ -51,6 +51,22 @@
        return Math.max( 0, sum + this.length - 1 );
 };
 
+es.AggregateArray.prototype.getCoverage = function( start, end ) {
+       var result = { 'on': [], 'off': [] },
+               sum = 0,
+               len;
+       for ( var i = 0, length = this.length; i < length; i++ ) {
+               len = this[i].getLength();
+               if ( sum >= start && sum + len < end ) {
+                       result.on.push( this[i] );
+               } else {
+                       result.off.push( this[i] );
+               }
+               sum += len
+       }
+       return result;
+};
+
 es.AggregateArray.prototype.select = function( start, end ) {
        // Support es.Range object as first argument
        if ( typeof start.from === 'number' && typeof start.to === 'number') {


_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs

Reply via email to