Commit 2f463196 authored by Romain Courteaud's avatar Romain Courteaud

[erp5_web_renderjs_ui] Update to jIO 3.8.0

parent fccd3e34
......@@ -107,6 +107,7 @@
<key> <string>text_content</string> </key>
<value> <string encoding="cdata"><![CDATA[
\n
/*! URI.js v1.12.0 http://medialize.github.com/URI.js/ */\n
/* build contains: IPv6.js, punycode.js, SecondLevelDomains.js, URI.js, URI.fragmentQuery.js */\n
(function(e,k){"object"===typeof exports?module.exports=k():"function"===typeof define&&define.amd?define(k):e.IPv6=k(e)})(this,function(e){var k=e&&e.IPv6;return{best:function(e){e=e.toLowerCase().split(":");var k=e.length,d=8;""===e[0]&&""===e[1]&&""===e[2]?(e.shift(),e.shift()):""===e[0]&&""===e[1]?e.shift():""===e[k-1]&&""===e[k-2]&&e.pop();k=e.length;-1!==e[k-1].indexOf(".")&&(d=7);var g;for(g=0;g<k&&""!==e[g];g++);if(g<d)for(e.splice(g,1,"0000");e.length<d;)e.splice(g,0,"0000");for(g=0;g<d;g++){for(var k=\n
......@@ -278,7 +279,7 @@ var objectHelper = (function () {\n
if (object.hasOwnProperty(propertyName)) {\n
property = object[propertyName];\n
// be aware, arrays are \'object\', too\n
if (typeof property === "object") {\n
if ((typeof property === "object") && !(property instanceof RegExp)) {\n
deepFreeze(property);\n
}\n
}\n
......@@ -4005,636 +4006,6 @@ if (typeof define === \'function\' && define.amd) {\n
* @return {Object} The json query tree\n
*/\n
function parseStringToObject(string) {\n
;\n
/*\n
\tDefault template driver for JS/CC generated parsers running as\n
\tbrowser-based JavaScript/ECMAScript applications.\n
\t\n
\tWARNING: \tThis parser template will not run as console and has lesser\n
\t\t\t\tfeatures for debugging than the console derivates for the\n
\t\t\t\tvarious JavaScript platforms.\n
\t\n
\tFeatures:\n
\t- Parser trace messages\n
\t- Integrated panic-mode error recovery\n
\t\n
\tWritten 2007, 2008 by Jan Max Meyer, J.M.K S.F. Software Technologies\n
\t\n
\tThis is in the public domain.\n
*/\n
\n
var NODEJS__dbg_withtrace\t\t= false;\n
var NODEJS__dbg_string\t\t\t= new String();\n
\n
function __NODEJS_dbg_print( text )\n
{\n
\tNODEJS__dbg_string += text + "\\n";\n
}\n
\n
function __NODEJS_lex( info )\n
{\n
\tvar state\t\t= 0;\n
\tvar match\t\t= -1;\n
\tvar match_pos\t= 0;\n
\tvar start\t\t= 0;\n
\tvar pos\t\t\t= info.offset + 1;\n
\n
\tdo\n
\t{\n
\t\tpos--;\n
\t\tstate = 0;\n
\t\tmatch = -2;\n
\t\tstart = pos;\n
\n
\t\tif( info.src.length <= start )\n
\t\t\treturn 19;\n
\n
\t\tdo\n
\t\t{\n
\n
switch( state )\n
{\n
\tcase 0:\n
\t\tif( ( info.src.charCodeAt( pos ) >= 0 && info.src.charCodeAt( pos ) <= 8 ) || ( info.src.charCodeAt( pos ) >= 10 && info.src.charCodeAt( pos ) <= 31 ) || ( info.src.charCodeAt( pos ) >= 35 && info.src.charCodeAt( pos ) <= 39 ) || ( info.src.charCodeAt( pos ) >= 42 && info.src.charCodeAt( pos ) <= 57 ) || info.src.charCodeAt( pos ) == 59 || ( info.src.charCodeAt( pos ) >= 63 && info.src.charCodeAt( pos ) <= 64 ) || ( info.src.charCodeAt( pos ) >= 66 && info.src.charCodeAt( pos ) <= 77 ) || ( info.src.charCodeAt( pos ) >= 80 && info.src.charCodeAt( pos ) <= 254 ) ) state = 1;\n
\t\telse if( info.src.charCodeAt( pos ) == 9 ) state = 2;\n
\t\telse if( info.src.charCodeAt( pos ) == 40 ) state = 3;\n
\t\telse if( info.src.charCodeAt( pos ) == 41 ) state = 4;\n
\t\telse if( info.src.charCodeAt( pos ) == 60 || info.src.charCodeAt( pos ) == 62 ) state = 5;\n
\t\telse if( info.src.charCodeAt( pos ) == 33 ) state = 11;\n
\t\telse if( info.src.charCodeAt( pos ) == 79 ) state = 12;\n
\t\telse if( info.src.charCodeAt( pos ) == 32 ) state = 13;\n
\t\telse if( info.src.charCodeAt( pos ) == 61 ) state = 14;\n
\t\telse if( info.src.charCodeAt( pos ) == 34 ) state = 15;\n
\t\telse if( info.src.charCodeAt( pos ) == 65 ) state = 19;\n
\t\telse if( info.src.charCodeAt( pos ) == 78 ) state = 20;\n
\t\telse state = -1;\n
\t\tbreak;\n
\n
\tcase 1:\n
\t\tif( ( info.src.charCodeAt( pos ) >= 0 && info.src.charCodeAt( pos ) <= 31 ) || info.src.charCodeAt( pos ) == 33 || ( info.src.charCodeAt( pos ) >= 35 && info.src.charCodeAt( pos ) <= 39 ) || ( info.src.charCodeAt( pos ) >= 42 && info.src.charCodeAt( pos ) <= 57 ) || ( info.src.charCodeAt( pos ) >= 59 && info.src.charCodeAt( pos ) <= 254 ) ) state = 1;\n
\t\telse if( info.src.charCodeAt( pos ) == 58 ) state = 6;\n
\t\telse state = -1;\n
\t\tmatch = 10;\n
\t\tmatch_pos = pos;\n
\t\tbreak;\n
\n
\tcase 2:\n
\t\tif( ( info.src.charCodeAt( pos ) >= 0 && info.src.charCodeAt( pos ) <= 31 ) || info.src.charCodeAt( pos ) == 33 || ( info.src.charCodeAt( pos ) >= 35 && info.src.charCodeAt( pos ) <= 39 ) || ( info.src.charCodeAt( pos ) >= 42 && info.src.charCodeAt( pos ) <= 57 ) || ( info.src.charCodeAt( pos ) >= 59 && info.src.charCodeAt( pos ) <= 254 ) ) state = 1;\n
\t\telse if( info.src.charCodeAt( pos ) == 58 ) state = 6;\n
\t\telse state = -1;\n
\t\tmatch = 1;\n
\t\tmatch_pos = pos;\n
\t\tbreak;\n
\n
\tcase 3:\n
\t\tstate = -1;\n
\t\tmatch = 3;\n
\t\tmatch_pos = pos;\n
\t\tbreak;\n
\n
\tcase 4:\n
\t\tstate = -1;\n
\t\tmatch = 4;\n
\t\tmatch_pos = pos;\n
\t\tbreak;\n
\n
\tcase 5:\n
\t\tif( info.src.charCodeAt( pos ) == 61 ) state = 14;\n
\t\telse state = -1;\n
\t\tmatch = 11;\n
\t\tmatch_pos = pos;\n
\t\tbreak;\n
\n
\tcase 6:\n
\t\tstate = -1;\n
\t\tmatch = 8;\n
\t\tmatch_pos = pos;\n
\t\tbreak;\n
\n
\tcase 7:\n
\t\tstate = -1;\n
\t\tmatch = 9;\n
\t\tmatch_pos = pos;\n
\t\tbreak;\n
\n
\tcase 8:\n
\t\tif( ( info.src.charCodeAt( pos ) >= 0 && info.src.charCodeAt( pos ) <= 31 ) || info.src.charCodeAt( pos ) == 33 || ( info.src.charCodeAt( pos ) >= 35 && info.src.charCodeAt( pos ) <= 39 ) || ( info.src.charCodeAt( pos ) >= 42 && info.src.charCodeAt( pos ) <= 57 ) || ( info.src.charCodeAt( pos ) >= 59 && info.src.charCodeAt( pos ) <= 254 ) ) state = 1;\n
\t\telse if( info.src.charCodeAt( pos ) == 58 ) state = 6;\n
\t\telse state = -1;\n
\t\tmatch = 6;\n
\t\tmatch_pos = pos;\n
\t\tbreak;\n
\n
\tcase 9:\n
\t\tif( ( info.src.charCodeAt( pos ) >= 0 && info.src.charCodeAt( pos ) <= 31 ) || info.src.charCodeAt( pos ) == 33 || ( info.src.charCodeAt( pos ) >= 35 && info.src.charCodeAt( pos ) <= 39 ) || ( info.src.charCodeAt( pos ) >= 42 && info.src.charCodeAt( pos ) <= 57 ) || ( info.src.charCodeAt( pos ) >= 59 && info.src.charCodeAt( pos ) <= 254 ) ) state = 1;\n
\t\telse if( info.src.charCodeAt( pos ) == 58 ) state = 6;\n
\t\telse state = -1;\n
\t\tmatch = 5;\n
\t\tmatch_pos = pos;\n
\t\tbreak;\n
\n
\tcase 10:\n
\t\tif( ( info.src.charCodeAt( pos ) >= 0 && info.src.charCodeAt( pos ) <= 31 ) || info.src.charCodeAt( pos ) == 33 || ( info.src.charCodeAt( pos ) >= 35 && info.src.charCodeAt( pos ) <= 39 ) || ( info.src.charCodeAt( pos ) >= 42 && info.src.charCodeAt( pos ) <= 57 ) || ( info.src.charCodeAt( pos ) >= 59 && info.src.charCodeAt( pos ) <= 254 ) ) state = 1;\n
\t\telse if( info.src.charCodeAt( pos ) == 58 ) state = 6;\n
\t\telse state = -1;\n
\t\tmatch = 7;\n
\t\tmatch_pos = pos;\n
\t\tbreak;\n
\n
\tcase 11:\n
\t\tif( info.src.charCodeAt( pos ) == 61 ) state = 14;\n
\t\telse state = -1;\n
\t\tbreak;\n
\n
\tcase 12:\n
\t\tif( ( info.src.charCodeAt( pos ) >= 0 && info.src.charCodeAt( pos ) <= 31 ) || info.src.charCodeAt( pos ) == 33 || ( info.src.charCodeAt( pos ) >= 35 && info.src.charCodeAt( pos ) <= 39 ) || ( info.src.charCodeAt( pos ) >= 42 && info.src.charCodeAt( pos ) <= 57 ) || ( info.src.charCodeAt( pos ) >= 59 && info.src.charCodeAt( pos ) <= 81 ) || ( info.src.charCodeAt( pos ) >= 83 && info.src.charCodeAt( pos ) <= 254 ) ) state = 1;\n
\t\telse if( info.src.charCodeAt( pos ) == 58 ) state = 6;\n
\t\telse if( info.src.charCodeAt( pos ) == 82 ) state = 8;\n
\t\telse state = -1;\n
\t\tmatch = 10;\n
\t\tmatch_pos = pos;\n
\t\tbreak;\n
\n
\tcase 13:\n
\t\tstate = -1;\n
\t\tmatch = 1;\n
\t\tmatch_pos = pos;\n
\t\tbreak;\n
\n
\tcase 14:\n
\t\tstate = -1;\n
\t\tmatch = 11;\n
\t\tmatch_pos = pos;\n
\t\tbreak;\n
\n
\tcase 15:\n
\t\tif( info.src.charCodeAt( pos ) == 34 ) state = 7;\n
\telse if( ( info.src.charCodeAt( pos ) >= 0 && info.src.charCodeAt( pos ) <= 33 ) || ( info.src.charCodeAt( pos ) >= 35 && info.src.charCodeAt( pos ) <= 91 ) || ( info.src.charCodeAt( pos ) >= 93 && info.src.charCodeAt( pos ) <= 254 ) || info.src.charCodeAt( pos ) > 255 ) state = 15;\n
\t\telse if( info.src.charCodeAt( pos ) == 92 ) state = 17;\n
\t\telse state = -1;\n
\t\tbreak;\n
\n
\tcase 16:\n
\t\tif( ( info.src.charCodeAt( pos ) >= 0 && info.src.charCodeAt( pos ) <= 31 ) || info.src.charCodeAt( pos ) == 33 || ( info.src.charCodeAt( pos ) >= 35 && info.src.charCodeAt( pos ) <= 39 ) || ( info.src.charCodeAt( pos ) >= 42 && info.src.charCodeAt( pos ) <= 57 ) || ( info.src.charCodeAt( pos ) >= 59 && info.src.charCodeAt( pos ) <= 67 ) || ( info.src.charCodeAt( pos ) >= 69 && info.src.charCodeAt( pos ) <= 254 ) ) state = 1;\n
\t\telse if( info.src.charCodeAt( pos ) == 58 ) state = 6;\n
\t\telse if( info.src.charCodeAt( pos ) == 68 ) state = 9;\n
\t\telse state = -1;\n
\t\tmatch = 10;\n
\t\tmatch_pos = pos;\n
\t\tbreak;\n
\n
\tcase 17:\n
\t\tif( ( info.src.charCodeAt( pos ) >= 0 && info.src.charCodeAt( pos ) <= 254 ) ) state = 15;\n
\t\telse state = -1;\n
\t\tbreak;\n
\n
\tcase 18:\n
\t\tif( ( info.src.charCodeAt( pos ) >= 0 && info.src.charCodeAt( pos ) <= 31 ) || info.src.charCodeAt( pos ) == 33 || ( info.src.charCodeAt( pos ) >= 35 && info.src.charCodeAt( pos ) <= 39 ) || ( info.src.charCodeAt( pos ) >= 42 && info.src.charCodeAt( pos ) <= 57 ) || ( info.src.charCodeAt( pos ) >= 59 && info.src.charCodeAt( pos ) <= 83 ) || ( info.src.charCodeAt( pos ) >= 85 && info.src.charCodeAt( pos ) <= 254 ) ) state = 1;\n
\t\telse if( info.src.charCodeAt( pos ) == 58 ) state = 6;\n
\t\telse if( info.src.charCodeAt( pos ) == 84 ) state = 10;\n
\t\telse state = -1;\n
\t\tmatch = 10;\n
\t\tmatch_pos = pos;\n
\t\tbreak;\n
\n
\tcase 19:\n
\t\tif( ( info.src.charCodeAt( pos ) >= 0 && info.src.charCodeAt( pos ) <= 31 ) || info.src.charCodeAt( pos ) == 33 || ( info.src.charCodeAt( pos ) >= 35 && info.src.charCodeAt( pos ) <= 39 ) || ( info.src.charCodeAt( pos ) >= 42 && info.src.charCodeAt( pos ) <= 57 ) || ( info.src.charCodeAt( pos ) >= 59 && info.src.charCodeAt( pos ) <= 77 ) || ( info.src.charCodeAt( pos ) >= 79 && info.src.charCodeAt( pos ) <= 254 ) ) state = 1;\n
\t\telse if( info.src.charCodeAt( pos ) == 58 ) state = 6;\n
\t\telse if( info.src.charCodeAt( pos ) == 78 ) state = 16;\n
\t\telse state = -1;\n
\t\tmatch = 10;\n
\t\tmatch_pos = pos;\n
\t\tbreak;\n
\n
\tcase 20:\n
\t\tif( ( info.src.charCodeAt( pos ) >= 0 && info.src.charCodeAt( pos ) <= 31 ) || info.src.charCodeAt( pos ) == 33 || ( info.src.charCodeAt( pos ) >= 35 && info.src.charCodeAt( pos ) <= 39 ) || ( info.src.charCodeAt( pos ) >= 42 && info.src.charCodeAt( pos ) <= 57 ) || ( info.src.charCodeAt( pos ) >= 59 && info.src.charCodeAt( pos ) <= 78 ) || ( info.src.charCodeAt( pos ) >= 80 && info.src.charCodeAt( pos ) <= 254 ) ) state = 1;\n
\t\telse if( info.src.charCodeAt( pos ) == 58 ) state = 6;\n
\t\telse if( info.src.charCodeAt( pos ) == 79 ) state = 18;\n
\t\telse state = -1;\n
\t\tmatch = 10;\n
\t\tmatch_pos = pos;\n
\t\tbreak;\n
\n
}\n
\n
\n
\t\t\tpos++;\n
\n
\t\t}\n
\t\twhile( state > -1 );\n
\n
\t}\n
\twhile( 1 > -1 && match == 1 );\n
\n
\tif( match > -1 )\n
\t{\n
\t\tinfo.att = info.src.substr( start, match_pos - start );\n
\t\tinfo.offset = match_pos;\n
\t\t\n
\n
\t}\n
\telse\n
\t{\n
\t\tinfo.att = new String();\n
\t\tmatch = -1;\n
\t}\n
\n
\treturn match;\n
}\n
\n
\n
function __NODEJS_parse( src, err_off, err_la )\n
{\n
\tvar\t\tsstack\t\t\t= new Array();\n
\tvar\t\tvstack\t\t\t= new Array();\n
\tvar \terr_cnt\t\t\t= 0;\n
\tvar\t\tact;\n
\tvar\t\tgo;\n
\tvar\t\tla;\n
\tvar\t\trval;\n
\tvar \tparseinfo\t\t= new Function( "", "var offset; var src; var att;" );\n
\tvar\t\tinfo\t\t\t= new parseinfo();\n
\t\n
/* Pop-Table */\n
var pop_tab = new Array(\n
\tnew Array( 0/* begin\' */, 1 ),\n
\tnew Array( 13/* begin */, 1 ),\n
\tnew Array( 12/* search_text */, 1 ),\n
\tnew Array( 12/* search_text */, 2 ),\n
\tnew Array( 12/* search_text */, 3 ),\n
\tnew Array( 14/* and_expression */, 1 ),\n
\tnew Array( 14/* and_expression */, 3 ),\n
\tnew Array( 15/* boolean_expression */, 2 ),\n
\tnew Array( 15/* boolean_expression */, 1 ),\n
\tnew Array( 16/* expression */, 3 ),\n
\tnew Array( 16/* expression */, 2 ),\n
\tnew Array( 16/* expression */, 1 ),\n
\tnew Array( 17/* value */, 2 ),\n
\tnew Array( 17/* value */, 1 ),\n
\tnew Array( 18/* string */, 1 ),\n
\tnew Array( 18/* string */, 1 )\n
);\n
\n
/* Action-Table */\n
var act_tab = new Array(\n
\t/* State 0 */ new Array( 7/* "NOT" */,5 , 3/* "LEFT_PARENTHESE" */,7 , 8/* "COLUMN" */,8 , 11/* "OPERATOR" */,10 , 10/* "WORD" */,12 , 9/* "STRING" */,13 ),\n
\t/* State 1 */ new Array( 19/* "$" */,0 ),\n
\t/* State 2 */ new Array( 19/* "$" */,-1 ),\n
\t/* State 3 */ new Array( 6/* "OR" */,14 , 7/* "NOT" */,5 , 3/* "LEFT_PARENTHESE" */,7 , 8/* "COLUMN" */,8 , 11/* "OPERATOR" */,10 , 10/* "WORD" */,12 , 9/* "STRING" */,13 , 19/* "$" */,-2 , 4/* "RIGHT_PARENTHESE" */,-2 ),\n
\t/* State 4 */ new Array( 5/* "AND" */,16 , 19/* "$" */,-5 , 7/* "NOT" */,-5 , 3/* "LEFT_PARENTHESE" */,-5 , 8/* "COLUMN" */,-5 , 11/* "OPERATOR" */,-5 , 10/* "WORD" */,-5 , 9/* "STRING" */,-5 , 6/* "OR" */,-5 , 4/* "RIGHT_PARENTHESE" */,-5 ),\n
\t/* State 5 */ new Array( 3/* "LEFT_PARENTHESE" */,7 , 8/* "COLUMN" */,8 , 11/* "OPERATOR" */,10 , 10/* "WORD" */,12 , 9/* "STRING" */,13 ),\n
\t/* State 6 */ new Array( 19/* "$" */,-8 , 7/* "NOT" */,-8 , 3/* "LEFT_PARENTHESE" */,-8 , 8/* "COLUMN" */,-8 , 11/* "OPERATOR" */,-8 , 10/* "WORD" */,-8 , 9/* "STRING" */,-8 , 6/* "OR" */,-8 , 5/* "AND" */,-8 , 4/* "RIGHT_PARENTHESE" */,-8 ),\n
\t/* State 7 */ new Array( 7/* "NOT" */,5 , 3/* "LEFT_PARENTHESE" */,7 , 8/* "COLUMN" */,8 , 11/* "OPERATOR" */,10 , 10/* "WORD" */,12 , 9/* "STRING" */,13 ),\n
\t/* State 8 */ new Array( 3/* "LEFT_PARENTHESE" */,7 , 8/* "COLUMN" */,8 , 11/* "OPERATOR" */,10 , 10/* "WORD" */,12 , 9/* "STRING" */,13 ),\n
\t/* State 9 */ new Array( 19/* "$" */,-11 , 7/* "NOT" */,-11 , 3/* "LEFT_PARENTHESE" */,-11 , 8/* "COLUMN" */,-11 , 11/* "OPERATOR" */,-11 , 10/* "WORD" */,-11 , 9/* "STRING" */,-11 , 6/* "OR" */,-11 , 5/* "AND" */,-11 , 4/* "RIGHT_PARENTHESE" */,-11 ),\n
\t/* State 10 */ new Array( 10/* "WORD" */,12 , 9/* "STRING" */,13 ),\n
\t/* State 11 */ new Array( 19/* "$" */,-13 , 7/* "NOT" */,-13 , 3/* "LEFT_PARENTHESE" */,-13 , 8/* "COLUMN" */,-13 , 11/* "OPERATOR" */,-13 , 10/* "WORD" */,-13 , 9/* "STRING" */,-13 , 6/* "OR" */,-13 , 5/* "AND" */,-13 , 4/* "RIGHT_PARENTHESE" */,-13 ),\n
\t/* State 12 */ new Array( 19/* "$" */,-14 , 7/* "NOT" */,-14 , 3/* "LEFT_PARENTHESE" */,-14 , 8/* "COLUMN" */,-14 , 11/* "OPERATOR" */,-14 , 10/* "WORD" */,-14 , 9/* "STRING" */,-14 , 6/* "OR" */,-14 , 5/* "AND" */,-14 , 4/* "RIGHT_PARENTHESE" */,-14 ),\n
\t/* State 13 */ new Array( 19/* "$" */,-15 , 7/* "NOT" */,-15 , 3/* "LEFT_PARENTHESE" */,-15 , 8/* "COLUMN" */,-15 , 11/* "OPERATOR" */,-15 , 10/* "WORD" */,-15 , 9/* "STRING" */,-15 , 6/* "OR" */,-15 , 5/* "AND" */,-15 , 4/* "RIGHT_PARENTHESE" */,-15 ),\n
\t/* State 14 */ new Array( 7/* "NOT" */,5 , 3/* "LEFT_PARENTHESE" */,7 , 8/* "COLUMN" */,8 , 11/* "OPERATOR" */,10 , 10/* "WORD" */,12 , 9/* "STRING" */,13 ),\n
\t/* State 15 */ new Array( 19/* "$" */,-3 , 4/* "RIGHT_PARENTHESE" */,-3 ),\n
\t/* State 16 */ new Array( 7/* "NOT" */,5 , 3/* "LEFT_PARENTHESE" */,7 , 8/* "COLUMN" */,8 , 11/* "OPERATOR" */,10 , 10/* "WORD" */,12 , 9/* "STRING" */,13 ),\n
\t/* State 17 */ new Array( 19/* "$" */,-7 , 7/* "NOT" */,-7 , 3/* "LEFT_PARENTHESE" */,-7 , 8/* "COLUMN" */,-7 , 11/* "OPERATOR" */,-7 , 10/* "WORD" */,-7 , 9/* "STRING" */,-7 , 6/* "OR" */,-7 , 5/* "AND" */,-7 , 4/* "RIGHT_PARENTHESE" */,-7 ),\n
\t/* State 18 */ new Array( 4/* "RIGHT_PARENTHESE" */,23 ),\n
\t/* State 19 */ new Array( 19/* "$" */,-10 , 7/* "NOT" */,-10 , 3/* "LEFT_PARENTHESE" */,-10 , 8/* "COLUMN" */,-10 , 11/* "OPERATOR" */,-10 , 10/* "WORD" */,-10 , 9/* "STRING" */,-10 , 6/* "OR" */,-10 , 5/* "AND" */,-10 , 4/* "RIGHT_PARENTHESE" */,-10 ),\n
\t/* State 20 */ new Array( 19/* "$" */,-12 , 7/* "NOT" */,-12 , 3/* "LEFT_PARENTHESE" */,-12 , 8/* "COLUMN" */,-12 , 11/* "OPERATOR" */,-12 , 10/* "WORD" */,-12 , 9/* "STRING" */,-12 , 6/* "OR" */,-12 , 5/* "AND" */,-12 , 4/* "RIGHT_PARENTHESE" */,-12 ),\n
\t/* State 21 */ new Array( 19/* "$" */,-4 , 4/* "RIGHT_PARENTHESE" */,-4 ),\n
\t/* State 22 */ new Array( 19/* "$" */,-6 , 7/* "NOT" */,-6 , 3/* "LEFT_PARENTHESE" */,-6 , 8/* "COLUMN" */,-6 , 11/* "OPERATOR" */,-6 , 10/* "WORD" */,-6 , 9/* "STRING" */,-6 , 6/* "OR" */,-6 , 4/* "RIGHT_PARENTHESE" */,-6 ),\n
\t/* State 23 */ new Array( 19/* "$" */,-9 , 7/* "NOT" */,-9 , 3/* "LEFT_PARENTHESE" */,-9 , 8/* "COLUMN" */,-9 , 11/* "OPERATOR" */,-9 , 10/* "WORD" */,-9 , 9/* "STRING" */,-9 , 6/* "OR" */,-9 , 5/* "AND" */,-9 , 4/* "RIGHT_PARENTHESE" */,-9 )\n
);\n
\n
/* Goto-Table */\n
var goto_tab = new Array(\n
\t/* State 0 */ new Array( 13/* begin */,1 , 12/* search_text */,2 , 14/* and_expression */,3 , 15/* boolean_expression */,4 , 16/* expression */,6 , 17/* value */,9 , 18/* string */,11 ),\n
\t/* State 1 */ new Array( ),\n
\t/* State 2 */ new Array( ),\n
\t/* State 3 */ new Array( 12/* search_text */,15 , 14/* and_expression */,3 , 15/* boolean_expression */,4 , 16/* expression */,6 , 17/* value */,9 , 18/* string */,11 ),\n
\t/* State 4 */ new Array( ),\n
\t/* State 5 */ new Array( 16/* expression */,17 , 17/* value */,9 , 18/* string */,11 ),\n
\t/* State 6 */ new Array( ),\n
\t/* State 7 */ new Array( 12/* search_text */,18 , 14/* and_expression */,3 , 15/* boolean_expression */,4 , 16/* expression */,6 , 17/* value */,9 , 18/* string */,11 ),\n
\t/* State 8 */ new Array( 16/* expression */,19 , 17/* value */,9 , 18/* string */,11 ),\n
\t/* State 9 */ new Array( ),\n
\t/* State 10 */ new Array( 18/* string */,20 ),\n
\t/* State 11 */ new Array( ),\n
\t/* State 12 */ new Array( ),\n
\t/* State 13 */ new Array( ),\n
\t/* State 14 */ new Array( 12/* search_text */,21 , 14/* and_expression */,3 , 15/* boolean_expression */,4 , 16/* expression */,6 , 17/* value */,9 , 18/* string */,11 ),\n
\t/* State 15 */ new Array( ),\n
\t/* State 16 */ new Array( 14/* and_expression */,22 , 15/* boolean_expression */,4 , 16/* expression */,6 , 17/* value */,9 , 18/* string */,11 ),\n
\t/* State 17 */ new Array( ),\n
\t/* State 18 */ new Array( ),\n
\t/* State 19 */ new Array( ),\n
\t/* State 20 */ new Array( ),\n
\t/* State 21 */ new Array( ),\n
\t/* State 22 */ new Array( ),\n
\t/* State 23 */ new Array( )\n
);\n
\n
\n
\n
/* Symbol labels */\n
var labels = new Array(\n
\t"begin\'" /* Non-terminal symbol */,\n
\t"WHITESPACE" /* Terminal symbol */,\n
\t"WHITESPACE" /* Terminal symbol */,\n
\t"LEFT_PARENTHESE" /* Terminal symbol */,\n
\t"RIGHT_PARENTHESE" /* Terminal symbol */,\n
\t"AND" /* Terminal symbol */,\n
\t"OR" /* Terminal symbol */,\n
\t"NOT" /* Terminal symbol */,\n
\t"COLUMN" /* Terminal symbol */,\n
\t"STRING" /* Terminal symbol */,\n
\t"WORD" /* Terminal symbol */,\n
\t"OPERATOR" /* Terminal symbol */,\n
\t"search_text" /* Non-terminal symbol */,\n
\t"begin" /* Non-terminal symbol */,\n
\t"and_expression" /* Non-terminal symbol */,\n
\t"boolean_expression" /* Non-terminal symbol */,\n
\t"expression" /* Non-terminal symbol */,\n
\t"value" /* Non-terminal symbol */,\n
\t"string" /* Non-terminal symbol */,\n
\t"$" /* Terminal symbol */\n
);\n
\n
\n
\t\n
\tinfo.offset = 0;\n
\tinfo.src = src;\n
\tinfo.att = new String();\n
\t\n
\tif( !err_off )\n
\t\terr_off\t= new Array();\n
\tif( !err_la )\n
\terr_la = new Array();\n
\t\n
\tsstack.push( 0 );\n
\tvstack.push( 0 );\n
\t\n
\tla = __NODEJS_lex( info );\n
\n
\twhile( true )\n
\t{\n
\t\tact = 25;\n
\t\tfor( var i = 0; i < act_tab[sstack[sstack.length-1]].length; i+=2 )\n
\t\t{\n
\t\t\tif( act_tab[sstack[sstack.length-1]][i] == la )\n
\t\t\t{\n
\t\t\t\tact = act_tab[sstack[sstack.length-1]][i+1];\n
\t\t\t\tbreak;\n
\t\t\t}\n
\t\t}\n
\n
\t\tif( NODEJS__dbg_withtrace && sstack.length > 0 )\n
\t\t{\n
\t\t\t__NODEJS_dbg_print( "\\nState " + sstack[sstack.length-1] + "\\n" +\n
\t\t\t\t\t\t\t"\\tLookahead: " + labels[la] + " (\\"" + info.att + "\\")\\n" +\n
\t\t\t\t\t\t\t"\\tAction: " + act + "\\n" + \n
\t\t\t\t\t\t\t"\\tSource: \\"" + info.src.substr( info.offset, 30 ) + ( ( info.offset + 30 < info.src.length ) ?\n
\t\t\t\t\t\t\t\t\t"..." : "" ) + "\\"\\n" +\n
\t\t\t\t\t\t\t"\\tStack: " + sstack.join() + "\\n" +\n
\t\t\t\t\t\t\t"\\tValue stack: " + vstack.join() + "\\n" );\n
\t\t}\n
\t\t\n
\t\t\t\n
\t\t//Panic-mode: Try recovery when parse-error occurs!\n
\t\tif( act == 25 )\n
\t\t{\n
\t\t\tif( NODEJS__dbg_withtrace )\n
\t\t\t\t__NODEJS_dbg_print( "Error detected: There is no reduce or shift on the symbol " + labels[la] );\n
\t\t\t\n
\t\t\terr_cnt++;\n
\t\t\terr_off.push( info.offset - info.att.length );\t\t\t\n
\t\t\terr_la.push( new Array() );\n
\t\t\tfor( var i = 0; i < act_tab[sstack[sstack.length-1]].length; i+=2 )\n
\t\t\t\terr_la[err_la.length-1].push( labels[act_tab[sstack[sstack.length-1]][i]] );\n
\t\t\t\n
\t\t\t//Remember the original stack!\n
\t\t\tvar rsstack = new Array();\n
\t\t\tvar rvstack = new Array();\n
\t\t\tfor( var i = 0; i < sstack.length; i++ )\n
\t\t\t{\n
\t\t\t\trsstack[i] = sstack[i];\n
\t\t\t\trvstack[i] = vstack[i];\n
\t\t\t}\n
\t\t\t\n
\t\t\twhile( act == 25 && la != 19 )\n
\t\t\t{\n
\t\t\t\tif( NODEJS__dbg_withtrace )\n
\t\t\t\t\t__NODEJS_dbg_print( "\\tError recovery\\n" +\n
\t\t\t\t\t\t\t\t\t"Current lookahead: " + labels[la] + " (" + info.att + ")\\n" +\n
\t\t\t\t\t\t\t\t\t"Action: " + act + "\\n\\n" );\n
\t\t\t\tif( la == -1 )\n
\t\t\t\t\tinfo.offset++;\n
\t\t\t\t\t\n
\t\t\t\twhile( act == 25 && sstack.length > 0 )\n
\t\t\t\t{\n
\t\t\t\t\tsstack.pop();\n
\t\t\t\t\tvstack.pop();\n
\t\t\t\t\t\n
\t\t\t\t\tif( sstack.length == 0 )\n
\t\t\t\t\t\tbreak;\n
\t\t\t\t\t\t\n
\t\t\t\t\tact = 25;\n
\t\t\t\t\tfor( var i = 0; i < act_tab[sstack[sstack.length-1]].length; i+=2 )\n
\t\t\t\t\t{\n
\t\t\t\t\t\tif( act_tab[sstack[sstack.length-1]][i] == la )\n
\t\t\t\t\t\t{\n
\t\t\t\t\t\t\tact = act_tab[sstack[sstack.length-1]][i+1];\n
\t\t\t\t\t\t\tbreak;\n
\t\t\t\t\t\t}\n
\t\t\t\t\t}\n
\t\t\t\t}\n
\t\t\t\t\n
\t\t\t\tif( act != 25 )\n
\t\t\t\t\tbreak;\n
\t\t\t\t\n
\t\t\t\tfor( var i = 0; i < rsstack.length; i++ )\n
\t\t\t\t{\n
\t\t\t\t\tsstack.push( rsstack[i] );\n
\t\t\t\t\tvstack.push( rvstack[i] );\n
\t\t\t\t}\n
\t\t\t\t\n
\t\t\t\tla = __NODEJS_lex( info );\n
\t\t\t}\n
\t\t\t\n
\t\t\tif( act == 25 )\n
\t\t\t{\n
\t\t\t\tif( NODEJS__dbg_withtrace )\n
\t\t\t\t\t__NODEJS_dbg_print( "\\tError recovery failed, terminating parse process..." );\n
\t\t\t\tbreak;\n
\t\t\t}\n
\n
\n
\t\t\tif( NODEJS__dbg_withtrace )\n
\t\t\t\t__NODEJS_dbg_print( "\\tError recovery succeeded, continuing" );\n
\t\t}\n
\t\t\n
\t\t/*\n
\t\tif( act == 25 )\n
\t\t\tbreak;\n
\t\t*/\n
\t\t\n
\t\t\n
\t\t//Shift\n
\t\tif( act > 0 )\n
\t\t{\t\t\t\n
\t\t\tif( NODEJS__dbg_withtrace )\n
\t\t\t\t__NODEJS_dbg_print( "Shifting symbol: " + labels[la] + " (" + info.att + ")" );\n
\t\t\n
\t\t\tsstack.push( act );\n
\t\t\tvstack.push( info.att );\n
\t\t\t\n
\t\t\tla = __NODEJS_lex( info );\n
\t\t\t\n
\t\t\tif( NODEJS__dbg_withtrace )\n
\t\t\t\t__NODEJS_dbg_print( "\\tNew lookahead symbol: " + labels[la] + " (" + info.att + ")" );\n
\t\t}\n
\t\t//Reduce\n
\t\telse\n
\t\t{\t\t\n
\t\t\tact *= -1;\n
\t\t\t\n
\t\t\tif( NODEJS__dbg_withtrace )\n
\t\t\t\t__NODEJS_dbg_print( "Reducing by producution: " + act );\n
\t\t\t\n
\t\t\trval = void(0);\n
\t\t\t\n
\t\t\tif( NODEJS__dbg_withtrace )\n
\t\t\t\t__NODEJS_dbg_print( "\\tPerforming semantic action..." );\n
\t\t\t\n
switch( act )\n
{\n
\tcase 0:\n
\t{\n
\t\trval = vstack[ vstack.length - 1 ];\n
\t}\n
\tbreak;\n
\tcase 1:\n
\t{\n
\t\t result = vstack[ vstack.length - 1 ]; \n
\t}\n
\tbreak;\n
\tcase 2:\n
\t{\n
\t\t rval = vstack[ vstack.length - 1 ]; \n
\t}\n
\tbreak;\n
\tcase 3:\n
\t{\n
\t\t rval = mkComplexQuery(\'OR\',[vstack[ vstack.length - 2 ],vstack[ vstack.length - 1 ]]); \n
\t}\n
\tbreak;\n
\tcase 4:\n
\t{\n
\t\t rval = mkComplexQuery(\'OR\',[vstack[ vstack.length - 3 ],vstack[ vstack.length - 1 ]]); \n
\t}\n
\tbreak;\n
\tcase 5:\n
\t{\n
\t\t rval = vstack[ vstack.length - 1 ] ; \n
\t}\n
\tbreak;\n
\tcase 6:\n
\t{\n
\t\t rval = mkComplexQuery(\'AND\',[vstack[ vstack.length - 3 ],vstack[ vstack.length - 1 ]]); \n
\t}\n
\tbreak;\n
\tcase 7:\n
\t{\n
\t\t rval = mkNotQuery(vstack[ vstack.length - 1 ]); \n
\t}\n
\tbreak;\n
\tcase 8:\n
\t{\n
\t\t rval = vstack[ vstack.length - 1 ]; \n
\t}\n
\tbreak;\n
\tcase 9:\n
\t{\n
\t\t rval = vstack[ vstack.length - 2 ]; \n
\t}\n
\tbreak;\n
\tcase 10:\n
\t{\n
\t\t simpleQuerySetKey(vstack[ vstack.length - 1 ],vstack[ vstack.length - 2 ].split(\':\').slice(0,-1).join(\':\')); rval = vstack[ vstack.length - 1 ]; \n
\t}\n
\tbreak;\n
\tcase 11:\n
\t{\n
\t\t rval = vstack[ vstack.length - 1 ]; \n
\t}\n
\tbreak;\n
\tcase 12:\n
\t{\n
\t\t vstack[ vstack.length - 1 ].operator = vstack[ vstack.length - 2 ] ; rval = vstack[ vstack.length - 1 ]; \n
\t}\n
\tbreak;\n
\tcase 13:\n
\t{\n
\t\t rval = vstack[ vstack.length - 1 ]; \n
\t}\n
\tbreak;\n
\tcase 14:\n
\t{\n
\t\t rval = mkSimpleQuery(\'\',vstack[ vstack.length - 1 ]); \n
\t}\n
\tbreak;\n
\tcase 15:\n
\t{\n
\t\t rval = mkSimpleQuery(\'\',vstack[ vstack.length - 1 ].split(\'"\').slice(1,-1).join(\'"\')); \n
\t}\n
\tbreak;\n
}\n
\n
\n
\n
\t\t\tif( NODEJS__dbg_withtrace )\n
\t\t\t\t__NODEJS_dbg_print( "\\tPopping " + pop_tab[act][1] + " off the stack..." );\n
\t\t\t\t\n
\t\t\tfor( var i = 0; i < pop_tab[act][1]; i++ )\n
\t\t\t{\n
\t\t\t\tsstack.pop();\n
\t\t\t\tvstack.pop();\n
\t\t\t}\n
\t\t\t\t\t\t\t\t\t\n
\t\t\tgo = -1;\n
\t\t\tfor( var i = 0; i < goto_tab[sstack[sstack.length-1]].length; i+=2 )\n
\t\t\t{\n
\t\t\t\tif( goto_tab[sstack[sstack.length-1]][i] == pop_tab[act][0] )\n
\t\t\t\t{\n
\t\t\t\t\tgo = goto_tab[sstack[sstack.length-1]][i+1];\n
\t\t\t\t\tbreak;\n
\t\t\t\t}\n
\t\t\t}\n
\t\t\t\n
\t\t\tif( act == 0 )\n
\t\t\t\tbreak;\n
\t\t\t\t\n
\t\t\tif( NODEJS__dbg_withtrace )\n
\t\t\t\t__NODEJS_dbg_print( "\\tPushing non-terminal " + labels[ pop_tab[act][0] ] );\n
\t\t\t\t\n
\t\t\tsstack.push( go );\n
\t\t\tvstack.push( rval );\t\t\t\n
\t\t}\n
\t\t\n
\t\tif( NODEJS__dbg_withtrace )\n
\t\t{\t\t\n
\t\t\talert( NODEJS__dbg_string );\n
\t\t\tNODEJS__dbg_string = new String();\n
\t\t}\n
\t}\n
\n
\tif( NODEJS__dbg_withtrace )\n
\t{\n
\t\t__NODEJS_dbg_print( "\\nParse complete." );\n
\t\talert( NODEJS__dbg_string );\n
\t}\n
\t\n
\treturn err_cnt;\n
}\n
\n
\n
\n
var arrayExtend = function () {\n
var j, i, newlist = [], list_list = arguments;\n
......@@ -4687,18 +4058,646 @@ var arrayExtend = function () {\n
error_lookaheads = [],\n
error_count = 0,\n
result;\n
\n
if ((error_count = __NODEJS_parse(string, error_offsets, error_lookaheads)) > 0) {\n
var i;\n
for (i = 0; i < error_count; i += 1) {\n
throw new Error("Parse error near \\"" +\n
string.substr(error_offsets[i]) +\n
"\\", expecting \\"" +\n
error_lookaheads[i].join() + "\\"");\n
;/* parser generated by jison 0.4.16 */\n
/*\n
Returns a Parser object of the following structure:\n
\n
Parser: {\n
yy: {}\n
}\n
\n
Parser.prototype: {\n
yy: {},\n
trace: function(),\n
symbols_: {associative list: name ==> number},\n
terminals_: {associative list: number ==> name},\n
productions_: [...],\n
performAction: function anonymous(yytext, yyleng, yylineno, yy, yystate, $$, _$),\n
table: [...],\n
defaultActions: {...},\n
parseError: function(str, hash),\n
parse: function(input),\n
\n
lexer: {\n
EOF: 1,\n
parseError: function(str, hash),\n
setInput: function(input),\n
input: function(),\n
unput: function(str),\n
more: function(),\n
less: function(n),\n
pastInput: function(),\n
upcomingInput: function(),\n
showPosition: function(),\n
test_match: function(regex_match_array, rule_index),\n
next: function(),\n
lex: function(),\n
begin: function(condition),\n
popState: function(),\n
_currentRules: function(),\n
topState: function(),\n
pushState: function(condition),\n
\n
options: {\n
ranges: boolean (optional: true ==> token location info will include a .range[] member)\n
flex: boolean (optional: true ==> flex-like lexing behaviour where the rules are tested exhaustively to find the longest match)\n
backtrack_lexer: boolean (optional: true ==> lexer regexes are tested in order and for each matching regex the action code is invoked; the lexer terminates the scan when a token is returned by the action code)\n
},\n
\n
performAction: function(yy, yy_, $avoiding_name_collisions, YY_START),\n
rules: [...],\n
conditions: {associative list: name ==> set},\n
}\n
}\n
\n
\n
token location info (@$, _$, etc.): {\n
first_line: n,\n
last_line: n,\n
first_column: n,\n
last_column: n,\n
range: [start_number, end_number] (where the numbers are indexes into the input string, regular zero-based)\n
}\n
\n
\n
the parseError function receives a \'hash\' object with these members for lexer and parser errors: {\n
text: (matched text)\n
token: (the produced terminal token, if any)\n
line: (yylineno)\n
}\n
while parser (grammar) errors will also provide these members, i.e. parser errors deliver a superset of attributes: {\n
loc: (yylloc)\n
expected: (string describing the set of expected tokens)\n
recoverable: (boolean: TRUE when the parser has a error recovery rule available for this particular error)\n
}\n
*/\n
var parser = (function(){\n
var o=function(k,v,o,l){for(o=o||{},l=k.length;l--;o[k[l]]=v);return o},$V0=[1,5],$V1=[1,7],$V2=[1,8],$V3=[1,10],$V4=[1,12],$V5=[1,6,7,15],$V6=[1,6,7,9,12,14,15,16,19,21],$V7=[1,6,7,9,11,12,14,15,16,19,21],$V8=[2,17];\n
var parser = {trace: function trace() { },\n
yy: {},\n
symbols_: {"error":2,"begin":3,"search_text":4,"end":5,"EOF":6,"NEWLINE":7,"and_expression":8,"OR":9,"boolean_expression":10,"AND":11,"NOT":12,"expression":13,"LEFT_PARENTHESE":14,"RIGHT_PARENTHESE":15,"WORD":16,"DEFINITION":17,"value":18,"OPERATOR":19,"string":20,"QUOTE":21,"QUOTED_STRING":22,"$accept":0,"$end":1},\n
terminals_: {2:"error",6:"EOF",7:"NEWLINE",9:"OR",11:"AND",12:"NOT",14:"LEFT_PARENTHESE",15:"RIGHT_PARENTHESE",16:"WORD",17:"DEFINITION",19:"OPERATOR",21:"QUOTE",22:"QUOTED_STRING"},\n
productions_: [0,[3,2],[5,0],[5,1],[5,1],[4,1],[4,2],[4,3],[8,1],[8,3],[10,2],[10,1],[13,3],[13,3],[13,1],[18,2],[18,1],[20,1],[20,3]],\n
performAction: function anonymous(yytext, yyleng, yylineno, yy, yystate /* action[1] */, $$ /* vstack */, _$ /* lstack */) {\n
/* this == yyval */\n
\n
var $0 = $$.length - 1;\n
switch (yystate) {\n
case 1:\n
return $$[$0-1]; \n
break;\n
case 5: case 8: case 11: case 14: case 16:\n
this.$ = $$[$0]; \n
break;\n
case 6:\n
this.$ = mkComplexQuery(\'OR\', [$$[$0-1], $$[$0]]); \n
break;\n
case 7:\n
this.$ = mkComplexQuery(\'OR\', [$$[$0-2], $$[$0]]); \n
break;\n
case 9:\n
this.$ = mkComplexQuery(\'AND\', [$$[$0-2], $$[$0]]); \n
break;\n
case 10:\n
this.$ = mkNotQuery($$[$0]); \n
break;\n
case 12:\n
this.$ = $$[$0-1]; \n
break;\n
case 13:\n
simpleQuerySetKey($$[$0], $$[$0-2]); this.$ = $$[$0]; \n
break;\n
case 15:\n
$$[$0].operator = $$[$0-1] ; this.$ = $$[$0]; \n
break;\n
case 17:\n
this.$ = mkSimpleQuery(\'\', $$[$0]); \n
break;\n
case 18:\n
this.$ = mkSimpleQuery(\'\', $$[$0-1]); \n
break;\n
}\n
},\n
table: [{3:1,4:2,8:3,10:4,12:$V0,13:6,14:$V1,16:$V2,18:9,19:$V3,20:11,21:$V4},{1:[3]},{1:[2,2],5:13,6:[1,14],7:[1,15]},o($V5,[2,5],{8:3,10:4,13:6,18:9,20:11,4:16,9:[1,17],12:$V0,14:$V1,16:$V2,19:$V3,21:$V4}),o($V6,[2,8],{11:[1,18]}),{13:19,14:$V1,16:$V2,18:9,19:$V3,20:11,21:$V4},o($V7,[2,11]),{4:20,8:3,10:4,12:$V0,13:6,14:$V1,16:$V2,18:9,19:$V3,20:11,21:$V4},o($V7,$V8,{17:[1,21]}),o($V7,[2,14]),{16:[1,23],20:22,21:$V4},o($V7,[2,16]),{22:[1,24]},{1:[2,1]},{1:[2,3]},{1:[2,4]},o($V5,[2,6]),{4:25,8:3,10:4,12:$V0,13:6,14:$V1,16:$V2,18:9,19:$V3,20:11,21:$V4},{8:26,10:4,12:$V0,13:6,14:$V1,16:$V2,18:9,19:$V3,20:11,21:$V4},o($V7,[2,10]),{15:[1,27]},{13:28,14:$V1,16:$V2,18:9,19:$V3,20:11,21:$V4},o($V7,[2,15]),o($V7,$V8),{21:[1,29]},o($V5,[2,7]),o($V6,[2,9]),o($V7,[2,12]),o($V7,[2,13]),o($V7,[2,18])],\n
defaultActions: {13:[2,1],14:[2,3],15:[2,4]},\n
parseError: function parseError(str, hash) {\n
if (hash.recoverable) {\n
this.trace(str);\n
} else {\n
function _parseError (msg, hash) {\n
this.message = msg;\n
this.hash = hash;\n
}\n
_parseError.prototype = new Error();\n
\n
throw new _parseError(str, hash);\n
}\n
},\n
parse: function parse(input) {\n
var self = this, stack = [0], tstack = [], vstack = [null], lstack = [], table = this.table, yytext = \'\', yylineno = 0, yyleng = 0, recovering = 0, TERROR = 2, EOF = 1;\n
var args = lstack.slice.call(arguments, 1);\n
var lexer = Object.create(this.lexer);\n
var sharedState = { yy: {} };\n
for (var k in this.yy) {\n
if (Object.prototype.hasOwnProperty.call(this.yy, k)) {\n
sharedState.yy[k] = this.yy[k];\n
}\n
}\n
lexer.setInput(input, sharedState.yy);\n
sharedState.yy.lexer = lexer;\n
sharedState.yy.parser = this;\n
if (typeof lexer.yylloc == \'undefined\') {\n
lexer.yylloc = {};\n
}\n
var yyloc = lexer.yylloc;\n
lstack.push(yyloc);\n
var ranges = lexer.options && lexer.options.ranges;\n
if (typeof sharedState.yy.parseError === \'function\') {\n
this.parseError = sharedState.yy.parseError;\n
} else {\n
this.parseError = Object.getPrototypeOf(this).parseError;\n
}\n
function popStack(n) {\n
stack.length = stack.length - 2 * n;\n
vstack.length = vstack.length - n;\n
lstack.length = lstack.length - n;\n
}\n
_token_stack:\n
var lex = function () {\n
var token;\n
token = lexer.lex() || EOF;\n
if (typeof token !== \'number\') {\n
token = self.symbols_[token] || token;\n
}\n
return token;\n
};\n
var symbol, preErrorSymbol, state, action, a, r, yyval = {}, p, len, newState, expected;\n
while (true) {\n
state = stack[stack.length - 1];\n
if (this.defaultActions[state]) {\n
action = this.defaultActions[state];\n
} else {\n
if (symbol === null || typeof symbol == \'undefined\') {\n
symbol = lex();\n
}\n
action = table[state] && table[state][symbol];\n
}\n
if (typeof action === \'undefined\' || !action.length || !action[0]) {\n
var errStr = \'\';\n
expected = [];\n
for (p in table[state]) {\n
if (this.terminals_[p] && p > TERROR) {\n
expected.push(\'\\\'\' + this.terminals_[p] + \'\\\'\');\n
}\n
}\n
if (lexer.showPosition) {\n
errStr = \'Parse error on line \' + (yylineno + 1) + \':\\n\' + lexer.showPosition() + \'\\nExpecting \' + expected.join(\', \') + \', got \\\'\' + (this.terminals_[symbol] || symbol) + \'\\\'\';\n
} else {\n
errStr = \'Parse error on line \' + (yylineno + 1) + \': Unexpected \' + (symbol == EOF ? \'end of input\' : \'\\\'\' + (this.terminals_[symbol] || symbol) + \'\\\'\');\n
}\n
this.parseError(errStr, {\n
text: lexer.match,\n
token: this.terminals_[symbol] || symbol,\n
line: lexer.yylineno,\n
loc: yyloc,\n
expected: expected\n
});\n
}\n
if (action[0] instanceof Array && action.length > 1) {\n
throw new Error(\'Parse Error: multiple actions possible at state: \' + state + \', token: \' + symbol);\n
}\n
switch (action[0]) {\n
case 1:\n
stack.push(symbol);\n
vstack.push(lexer.yytext);\n
lstack.push(lexer.yylloc);\n
stack.push(action[1]);\n
symbol = null;\n
if (!preErrorSymbol) {\n
yyleng = lexer.yyleng;\n
yytext = lexer.yytext;\n
yylineno = lexer.yylineno;\n
yyloc = lexer.yylloc;\n
if (recovering > 0) {\n
recovering--;\n
}\n
} else {\n
symbol = preErrorSymbol;\n
preErrorSymbol = null;\n
}\n
break;\n
case 2:\n
len = this.productions_[action[1]][1];\n
yyval.$ = vstack[vstack.length - len];\n
yyval._$ = {\n
first_line: lstack[lstack.length - (len || 1)].first_line,\n
last_line: lstack[lstack.length - 1].last_line,\n
first_column: lstack[lstack.length - (len || 1)].first_column,\n
last_column: lstack[lstack.length - 1].last_column\n
};\n
if (ranges) {\n
yyval._$.range = [\n
lstack[lstack.length - (len || 1)].range[0],\n
lstack[lstack.length - 1].range[1]\n
];\n
}\n
r = this.performAction.apply(yyval, [\n
yytext,\n
yyleng,\n
yylineno,\n
sharedState.yy,\n
action[1],\n
vstack,\n
lstack\n
].concat(args));\n
if (typeof r !== \'undefined\') {\n
return r;\n
}\n
if (len) {\n
stack = stack.slice(0, -1 * len * 2);\n
vstack = vstack.slice(0, -1 * len);\n
lstack = lstack.slice(0, -1 * len);\n
}\n
stack.push(this.productions_[action[1]][0]);\n
vstack.push(yyval.$);\n
lstack.push(yyval._$);\n
newState = table[stack[stack.length - 2]][stack[stack.length - 1]];\n
stack.push(newState);\n
break;\n
case 3:\n
return true;\n
}\n
}\n
return true;\n
}};\n
/* generated by jison-lex 0.3.4 */\n
var lexer = (function(){\n
var lexer = ({\n
\n
EOF:1,\n
\n
parseError:function parseError(str, hash) {\n
if (this.yy.parser) {\n
this.yy.parser.parseError(str, hash);\n
} else {\n
throw new Error(str);\n
}\n
},\n
\n
// resets the lexer, sets new input\n
setInput:function (input, yy) {\n
this.yy = yy || this.yy || {};\n
this._input = input;\n
this._more = this._backtrack = this.done = false;\n
this.yylineno = this.yyleng = 0;\n
this.yytext = this.matched = this.match = \'\';\n
this.conditionStack = [\'INITIAL\'];\n
this.yylloc = {\n
first_line: 1,\n
first_column: 0,\n
last_line: 1,\n
last_column: 0\n
};\n
if (this.options.ranges) {\n
this.yylloc.range = [0,0];\n
}\n
this.offset = 0;\n
return this;\n
},\n
\n
// consumes and returns one char from the input\n
input:function () {\n
var ch = this._input[0];\n
this.yytext += ch;\n
this.yyleng++;\n
this.offset++;\n
this.match += ch;\n
this.matched += ch;\n
var lines = ch.match(/(?:\\r\\n?|\\n).*/g);\n
if (lines) {\n
this.yylineno++;\n
this.yylloc.last_line++;\n
} else {\n
this.yylloc.last_column++;\n
}\n
if (this.options.ranges) {\n
this.yylloc.range[1]++;\n
}\n
\n
this._input = this._input.slice(1);\n
return ch;\n
},\n
\n
// unshifts one char (or a string) into the input\n
unput:function (ch) {\n
var len = ch.length;\n
var lines = ch.split(/(?:\\r\\n?|\\n)/g);\n
\n
this._input = ch + this._input;\n
this.yytext = this.yytext.substr(0, this.yytext.length - len);\n
//this.yyleng -= len;\n
this.offset -= len;\n
var oldLines = this.match.split(/(?:\\r\\n?|\\n)/g);\n
this.match = this.match.substr(0, this.match.length - 1);\n
this.matched = this.matched.substr(0, this.matched.length - 1);\n
\n
if (lines.length - 1) {\n
this.yylineno -= lines.length - 1;\n
}\n
var r = this.yylloc.range;\n
\n
this.yylloc = {\n
first_line: this.yylloc.first_line,\n
last_line: this.yylineno + 1,\n
first_column: this.yylloc.first_column,\n
last_column: lines ?\n
(lines.length === oldLines.length ? this.yylloc.first_column : 0)\n
+ oldLines[oldLines.length - lines.length].length - lines[0].length :\n
this.yylloc.first_column - len\n
};\n
\n
if (this.options.ranges) {\n
this.yylloc.range = [r[0], r[0] + this.yyleng - len];\n
}\n
this.yyleng = this.yytext.length;\n
return this;\n
},\n
\n
; return result;\n
// When called from action, caches matched text and appends it on next action\n
more:function () {\n
this._more = true;\n
return this;\n
},\n
\n
// When called from action, signals the lexer that this rule fails to match the input, so the next matching rule (regex) should be tested instead.\n
reject:function () {\n
if (this.options.backtrack_lexer) {\n
this._backtrack = true;\n
} else {\n
return this.parseError(\'Lexical error on line \' + (this.yylineno + 1) + \'. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\\n\' + this.showPosition(), {\n
text: "",\n
token: null,\n
line: this.yylineno\n
});\n
\n
}\n
return this;\n
},\n
\n
// retain first n characters of the match\n
less:function (n) {\n
this.unput(this.match.slice(n));\n
},\n
\n
// displays already matched input, i.e. for error messages\n
pastInput:function () {\n
var past = this.matched.substr(0, this.matched.length - this.match.length);\n
return (past.length > 20 ? \'...\':\'\') + past.substr(-20).replace(/\\n/g, "");\n
},\n
\n
// displays upcoming input, i.e. for error messages\n
upcomingInput:function () {\n
var next = this.match;\n
if (next.length < 20) {\n
next += this._input.substr(0, 20-next.length);\n
}\n
return (next.substr(0,20) + (next.length > 20 ? \'...\' : \'\')).replace(/\\n/g, "");\n
},\n
\n
// displays the character position where the lexing error occurred, i.e. for error messages\n
showPosition:function () {\n
var pre = this.pastInput();\n
var c = new Array(pre.length + 1).join("-");\n
return pre + this.upcomingInput() + "\\n" + c + "^";\n
},\n
\n
// test the lexed token: return FALSE when not a match, otherwise return token\n
test_match:function (match, indexed_rule) {\n
var token,\n
lines,\n
backup;\n
\n
if (this.options.backtrack_lexer) {\n
// save context\n
backup = {\n
yylineno: this.yylineno,\n
yylloc: {\n
first_line: this.yylloc.first_line,\n
last_line: this.last_line,\n
first_column: this.yylloc.first_column,\n
last_column: this.yylloc.last_column\n
},\n
yytext: this.yytext,\n
match: this.match,\n
matches: this.matches,\n
matched: this.matched,\n
yyleng: this.yyleng,\n
offset: this.offset,\n
_more: this._more,\n
_input: this._input,\n
yy: this.yy,\n
conditionStack: this.conditionStack.slice(0),\n
done: this.done\n
};\n
if (this.options.ranges) {\n
backup.yylloc.range = this.yylloc.range.slice(0);\n
}\n
}\n
\n
lines = match[0].match(/(?:\\r\\n?|\\n).*/g);\n
if (lines) {\n
this.yylineno += lines.length;\n
}\n
this.yylloc = {\n
first_line: this.yylloc.last_line,\n
last_line: this.yylineno + 1,\n
first_column: this.yylloc.last_column,\n
last_column: lines ?\n
lines[lines.length - 1].length - lines[lines.length - 1].match(/\\r?\\n?/)[0].length :\n
this.yylloc.last_column + match[0].length\n
};\n
this.yytext += match[0];\n
this.match += match[0];\n
this.matches = match;\n
this.yyleng = this.yytext.length;\n
if (this.options.ranges) {\n
this.yylloc.range = [this.offset, this.offset += this.yyleng];\n
}\n
this._more = false;\n
this._backtrack = false;\n
this._input = this._input.slice(match[0].length);\n
this.matched += match[0];\n
token = this.performAction.call(this, this.yy, this, indexed_rule, this.conditionStack[this.conditionStack.length - 1]);\n
if (this.done && this._input) {\n
this.done = false;\n
}\n
if (token) {\n
return token;\n
} else if (this._backtrack) {\n
// recover context\n
for (var k in backup) {\n
this[k] = backup[k];\n
}\n
return false; // rule action called reject() implying the next rule should be tested instead.\n
}\n
return false;\n
},\n
\n
// return next match in input\n
next:function () {\n
if (this.done) {\n
return this.EOF;\n
}\n
if (!this._input) {\n
this.done = true;\n
}\n
\n
var token,\n
match,\n
tempMatch,\n
index;\n
if (!this._more) {\n
this.yytext = \'\';\n
this.match = \'\';\n
}\n
var rules = this._currentRules();\n
for (var i = 0; i < rules.length; i++) {\n
tempMatch = this._input.match(this.rules[rules[i]]);\n
if (tempMatch && (!match || tempMatch[0].length > match[0].length)) {\n
match = tempMatch;\n
index = i;\n
if (this.options.backtrack_lexer) {\n
token = this.test_match(tempMatch, rules[i]);\n
if (token !== false) {\n
return token;\n
} else if (this._backtrack) {\n
match = false;\n
continue; // rule action called reject() implying a rule MISmatch.\n
} else {\n
// else: this is a lexer rule which consumes input without producing a token (e.g. whitespace)\n
return false;\n
}\n
} else if (!this.options.flex) {\n
break;\n
}\n
}\n
}\n
if (match) {\n
token = this.test_match(match, rules[index]);\n
if (token !== false) {\n
return token;\n
}\n
// else: this is a lexer rule which consumes input without producing a token (e.g. whitespace)\n
return false;\n
}\n
if (this._input === "") {\n
return this.EOF;\n
} else {\n
return this.parseError(\'Lexical error on line \' + (this.yylineno + 1) + \'. Unrecognized text.\\n\' + this.showPosition(), {\n
text: "",\n
token: null,\n
line: this.yylineno\n
});\n
}\n
},\n
\n
// return next match that has a token\n
lex:function lex() {\n
var r = this.next();\n
if (r) {\n
return r;\n
} else {\n
return this.lex();\n
}\n
},\n
\n
// activates a new lexer condition state (pushes the new lexer condition state onto the condition stack)\n
begin:function begin(condition) {\n
this.conditionStack.push(condition);\n
},\n
\n
// pop the previously active lexer condition state off the condition stack\n
popState:function popState() {\n
var n = this.conditionStack.length - 1;\n
if (n > 0) {\n
return this.conditionStack.pop();\n
} else {\n
return this.conditionStack[0];\n
}\n
},\n
\n
// produce the lexer rule set which is active for the currently active lexer condition state\n
_currentRules:function _currentRules() {\n
if (this.conditionStack.length && this.conditionStack[this.conditionStack.length - 1]) {\n
return this.conditions[this.conditionStack[this.conditionStack.length - 1]].rules;\n
} else {\n
return this.conditions["INITIAL"].rules;\n
}\n
},\n
\n
// return the currently active lexer condition state; when an index argument is provided it produces the N-th previous condition state, if available\n
topState:function topState(n) {\n
n = this.conditionStack.length - 1 - Math.abs(n || 0);\n
if (n >= 0) {\n
return this.conditionStack[n];\n
} else {\n
return "INITIAL";\n
}\n
},\n
\n
// alias for begin(condition)\n
pushState:function pushState(condition) {\n
this.begin(condition);\n
},\n
\n
// return the number of states currently on the stack\n
stateStackSize:function stateStackSize() {\n
return this.conditionStack.length;\n
},\n
options: {},\n
performAction: function anonymous(yy,yy_,$avoiding_name_collisions,YY_START) {\n
var YYSTATE=YY_START;\n
switch($avoiding_name_collisions) {\n
case 0:this.begin("letsquote"); return "QUOTE";\n
break;\n
case 1:this.popState(); this.begin("endquote"); return "QUOTED_STRING";\n
break;\n
case 2:this.popState(); return "QUOTE";\n
break;\n
case 3:/* skip whitespace */\n
break;\n
case 4:return "LEFT_PARENTHESE";\n
break;\n
case 5:return "RIGHT_PARENTHESE";\n
break;\n
case 6:return "AND";\n
break;\n
case 7:return "OR";\n
break;\n
case 8:return "NOT";\n
break;\n
case 9:return "DEFINITION";\n
break;\n
case 10:return 19;\n
break;\n
case 11:return 16;\n
break;\n
case 12:return 6;\n
break;\n
}\n
},\n
rules: [/^(?:")/,/^(?:(\\\\"|[^"])*)/,/^(?:")/,/^(?:[^\\S]+)/,/^(?:\\()/,/^(?:\\))/,/^(?:AND\\b)/,/^(?:OR\\b)/,/^(?:NOT\\b)/,/^(?::)/,/^(?:(!?=|<=?|>=?))/,/^(?:[^\\s\\n"():><!=]+)/,/^(?:$)/],\n
conditions: {"endquote":{"rules":[2],"inclusive":false},"letsquote":{"rules":[1],"inclusive":false},"INITIAL":{"rules":[0,3,4,5,6,7,8,9,10,11,12],"inclusive":true}}\n
});\n
return lexer;\n
})();\n
parser.lexer = lexer;\n
function Parser () {\n
this.yy = {};\n
}\n
Parser.prototype = parser;parser.Parser = Parser;\n
return new Parser;\n
})();; return parser.parse(string);\n
} // parseStringToObject\n
\n
;/*global RSVP, window, parseStringToObject*/\n
......@@ -11100,7 +11099,8 @@ if ((error_count = __NODEJS_parse(string, error_offsets, error_lookaheads)) > 0)
\n
jIO.addStorage(\'websql\', WebSQLStorage);\n
\n
}(jIO, RSVP, Blob, openDatabase));
}(jIO, RSVP, Blob, openDatabase));\n
]]></string> </value>
</item>
......@@ -11237,7 +11237,7 @@ if ((error_count = __NODEJS_parse(string, error_offsets, error_lookaheads)) > 0)
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>947.46978.10225.52394</string> </value>
<value> <string>948.39047.2997.52514</string> </value>
</item>
<item>
<key> <string>state</string> </key>
......@@ -11255,7 +11255,7 @@ if ((error_count = __NODEJS_parse(string, error_offsets, error_lookaheads)) > 0)
</tuple>
<state>
<tuple>
<float>1451317168.97</float>
<float>1453304148.91</float>
<string>UTC</string>
</tuple>
</state>
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment