diff --git a/complex_queries.js b/complex_queries.js index 00477f8ea14a0d9b320870a4f93aab987faa5b96..9c267d7f393a98416754fad13f90e5ec0fff5329 100644 --- a/complex_queries.js +++ b/complex_queries.js @@ -1,3 +1,9 @@ +/* +* Copyright 2013, Nexedi SA +* Released under the LGPL license. +* http://www.gnu.org/licenses/lgpl.html +*/ + (function (scope) { "use strict"; Object.defineProperty(scope, "ComplexQueries", { @@ -29,15 +35,15 @@ Object.defineProperty(scope.ComplexQueries, "parse", { This is in the public domain. */ -var _dbg_withtrace = false; -var _dbg_string = new String(); +var NODEJS__dbg_withtrace = false; +var NODEJS__dbg_string = new String(); -function __dbg_print( text ) +function __NODEJS_dbg_print( text ) { - _dbg_string += text + "\n"; + NODEJS__dbg_string += text + "\n"; } -function __lex( info ) +function __NODEJS_lex( info ) { var state = 0; var match = -1; @@ -243,7 +249,7 @@ switch( state ) } -function __parse( src, err_off, err_la ) +function __NODEJS_parse( src, err_off, err_la ) { var sstack = new Array(); var vstack = new Array(); @@ -371,7 +377,7 @@ var labels = new Array( sstack.push( 0 ); vstack.push( 0 ); - la = __lex( info ); + la = __NODEJS_lex( info ); while( true ) { @@ -385,9 +391,9 @@ var labels = new Array( } } - if( _dbg_withtrace && sstack.length > 0 ) + if( NODEJS__dbg_withtrace && sstack.length > 0 ) { - __dbg_print( "\nState " + sstack[sstack.length-1] + "\n" + + __NODEJS_dbg_print( "\nState " + sstack[sstack.length-1] + "\n" + "\tLookahead: " + labels[la] + " (\"" + info.att + "\")\n" + "\tAction: " + act + "\n" + "\tSource: \"" + info.src.substr( info.offset, 30 ) + ( ( info.offset + 30 < info.src.length ) ? @@ -400,8 +406,8 @@ var labels = new Array( //Panic-mode: Try recovery when parse-error occurs! if( act == 25 ) { - if( _dbg_withtrace ) - __dbg_print( "Error detected: There is no reduce or shift on the symbol " + labels[la] ); + if( NODEJS__dbg_withtrace ) + __NODEJS_dbg_print( "Error detected: There is no reduce or shift on the symbol " + labels[la] ); err_cnt++; err_off.push( info.offset - info.att.length ); @@ -420,8 +426,8 @@ var labels = new Array( while( act == 25 && la != 19 ) { - if( _dbg_withtrace ) - __dbg_print( "\tError recovery\n" + + if( NODEJS__dbg_withtrace ) + __NODEJS_dbg_print( "\tError recovery\n" + "Current lookahead: " + labels[la] + " (" + info.att + ")\n" + "Action: " + act + "\n\n" ); if( la == -1 ) @@ -455,19 +461,19 @@ var labels = new Array( vstack.push( rvstack[i] ); } - la = __lex( info ); + la = __NODEJS_lex( info ); } if( act == 25 ) { - if( _dbg_withtrace ) - __dbg_print( "\tError recovery failed, terminating parse process..." ); + if( NODEJS__dbg_withtrace ) + __NODEJS_dbg_print( "\tError recovery failed, terminating parse process..." ); break; } - if( _dbg_withtrace ) - __dbg_print( "\tError recovery succeeded, continuing" ); + if( NODEJS__dbg_withtrace ) + __NODEJS_dbg_print( "\tError recovery succeeded, continuing" ); } /* @@ -479,29 +485,29 @@ var labels = new Array( //Shift if( act > 0 ) { - if( _dbg_withtrace ) - __dbg_print( "Shifting symbol: " + labels[la] + " (" + info.att + ")" ); + if( NODEJS__dbg_withtrace ) + __NODEJS_dbg_print( "Shifting symbol: " + labels[la] + " (" + info.att + ")" ); sstack.push( act ); vstack.push( info.att ); - la = __lex( info ); + la = __NODEJS_lex( info ); - if( _dbg_withtrace ) - __dbg_print( "\tNew lookahead symbol: " + labels[la] + " (" + info.att + ")" ); + if( NODEJS__dbg_withtrace ) + __NODEJS_dbg_print( "\tNew lookahead symbol: " + labels[la] + " (" + info.att + ")" ); } //Reduce else { act *= -1; - if( _dbg_withtrace ) - __dbg_print( "Reducing by producution: " + act ); + if( NODEJS__dbg_withtrace ) + __NODEJS_dbg_print( "Reducing by producution: " + act ); rval = void(0); - if( _dbg_withtrace ) - __dbg_print( "\tPerforming semantic action..." ); + if( NODEJS__dbg_withtrace ) + __NODEJS_dbg_print( "\tPerforming semantic action..." ); switch( act ) { @@ -589,8 +595,8 @@ switch( act ) - if( _dbg_withtrace ) - __dbg_print( "\tPopping " + pop_tab[act][1] + " off the stack..." ); + if( NODEJS__dbg_withtrace ) + __NODEJS_dbg_print( "\tPopping " + pop_tab[act][1] + " off the stack..." ); for( var i = 0; i < pop_tab[act][1]; i++ ) { @@ -611,24 +617,24 @@ switch( act ) if( act == 0 ) break; - if( _dbg_withtrace ) - __dbg_print( "\tPushing non-terminal " + labels[ pop_tab[act][0] ] ); + if( NODEJS__dbg_withtrace ) + __NODEJS_dbg_print( "\tPushing non-terminal " + labels[ pop_tab[act][0] ] ); sstack.push( go ); vstack.push( rval ); } - if( _dbg_withtrace ) + if( NODEJS__dbg_withtrace ) { - alert( _dbg_string ); - _dbg_string = new String(); + alert( NODEJS__dbg_string ); + NODEJS__dbg_string = new String(); } } - if( _dbg_withtrace ) + if( NODEJS__dbg_withtrace ) { - __dbg_print( "\nParse complete." ); - alert( _dbg_string ); + __NODEJS_dbg_print( "\nParse complete." ); + alert( NODEJS__dbg_string ); } return err_cnt; @@ -683,7 +689,7 @@ var error_offsets = []; var error_lookaheads = []; var error_count = 0; var result; -if ( ( error_count = __parse( string, error_offsets, error_lookaheads ) ) > 0 ) { +if ( ( error_count = __NODEJS_parse( string, error_offsets, error_lookaheads ) ) > 0 ) { var i; for (i = 0; i < error_count; ++i) { throw new Error ( "Parse error near \"" + diff --git a/jio.js b/jio.js index b304bee52b9206d431831aa922d97404ecec366c..c12e012fc26d8546480daf62c0cdf77f671e8ce5 100644 --- a/jio.js +++ b/jio.js @@ -1,3 +1,9 @@ +/* +* Copyright 2013, Nexedi SA +* Released under the LGPL license. +* http://www.gnu.org/licenses/lgpl.html +*/ + (function (scope, hex_md5) { "use strict"; var localstorage; @@ -1794,12 +1800,14 @@ var jobRules = (function () { that.default_action = that.none; that.default_compare = function (job1, job2) { return (job1.getCommand().getDocId() === job2.getCommand().getDocId() && - job1.getCommand().getDocInfo('_rev') === - job2.getCommand().getDocInfo('_rev') && - job1.getCommand().getOption('rev') === - job2.getCommand().getOption('rev') && - JSON.stringify(job1.getStorage().serialized()) === - JSON.stringify(job2.getStorage().serialized())); + job1.getCommand().getAttachmentId() === + job2.getCommand().getAttachmentId() && + job1.getCommand().getDocInfo('_rev') === + job2.getCommand().getDocInfo('_rev') && + job1.getCommand().getOption('rev') === + job2.getCommand().getOption('rev') && + JSON.stringify(job1.getStorage().serialized()) === + JSON.stringify(job2.getStorage().serialized())); }; // Methods //