alpaca
Version:
Alpaca provides the easiest and fastest way to generate interactive forms for the web and mobile devices. It runs simply as HTML5 or more elaborately using Bootstrap, jQuery Mobile or jQuery UI. Alpaca uses Handlebars to process JSON schema and provide
1,507 lines (1,464 loc) • 402 kB
JavaScript
define("ace/mode/xquery/jsoniq_lexer",["require","exports","module"], function(require, exports, module) {
module.exports = (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);throw new Error("Cannot find module '"+o+"'")}var f=n[o]={exports:{}};t[o][0].call(f.exports,function(e){var n=t[o][1][e];return s(n?n:e)},f,f.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({
1:[function(_dereq_,module,exports){
var JSONiqTokenizer = exports.JSONiqTokenizer = function JSONiqTokenizer(string, parsingEventHandler)
{
init(string, parsingEventHandler);
var self = this;
this.ParseException = function(b, e, s, o, x)
{
var
begin = b,
end = e,
state = s,
offending = o,
expected = x;
this.getBegin = function() {return begin;};
this.getEnd = function() {return end;};
this.getState = function() {return state;};
this.getExpected = function() {return expected;};
this.getOffending = function() {return offending;};
this.getMessage = function()
{
return offending < 0 ? "lexical analysis failed" : "syntax error";
};
};
function init(string, parsingEventHandler)
{
eventHandler = parsingEventHandler;
input = string;
size = string.length;
reset(0, 0, 0);
}
this.getInput = function()
{
return input;
};
function reset(l, b, e)
{
b0 = b; e0 = b;
l1 = l; b1 = b; e1 = e;
end = e;
eventHandler.reset(input);
}
this.getOffendingToken = function(e)
{
var o = e.getOffending();
return o >= 0 ? JSONiqTokenizer.TOKEN[o] : null;
};
this.getExpectedTokenSet = function(e)
{
var expected;
if (e.getExpected() < 0)
{
expected = JSONiqTokenizer.getTokenSet(- e.getState());
}
else
{
expected = [JSONiqTokenizer.TOKEN[e.getExpected()]];
}
return expected;
};
this.getErrorMessage = function(e)
{
var tokenSet = this.getExpectedTokenSet(e);
var found = this.getOffendingToken(e);
var prefix = input.substring(0, e.getBegin());
var lines = prefix.split("\n");
var line = lines.length;
var column = lines[line - 1].length + 1;
var size = e.getEnd() - e.getBegin();
return e.getMessage()
+ (found == null ? "" : ", found " + found)
+ "\nwhile expecting "
+ (tokenSet.length == 1 ? tokenSet[0] : ("[" + tokenSet.join(", ") + "]"))
+ "\n"
+ (size == 0 || found != null ? "" : "after successfully scanning " + size + " characters beginning ")
+ "at line " + line + ", column " + column + ":\n..."
+ input.substring(e.getBegin(), Math.min(input.length, e.getBegin() + 64))
+ "...";
};
this.parse_start = function()
{
eventHandler.startNonterminal("start", e0);
lookahead1W(14); // ModuleDecl | Annotation | OptionDecl | Operator | Variable | Tag | AttrTest |
switch (l1)
{
case 58: // '<![CDATA['
shift(58); // '<![CDATA['
break;
case 57: // '<!--'
shift(57); // '<!--'
break;
case 59: // '<?'
shift(59); // '<?'
break;
case 43: // '(#'
shift(43); // '(#'
break;
case 45: // '(:~'
shift(45); // '(:~'
break;
case 44: // '(:'
shift(44); // '(:'
break;
case 37: // '"'
shift(37); // '"'
break;
case 41: // "'"
shift(41); // "'"
break;
case 277: // '}'
shift(277); // '}'
break;
case 274: // '{'
shift(274); // '{'
break;
case 42: // '('
shift(42); // '('
break;
case 46: // ')'
shift(46); // ')'
break;
case 52: // '/'
shift(52); // '/'
break;
case 65: // '['
shift(65); // '['
break;
case 66: // ']'
shift(66); // ']'
break;
case 49: // ','
shift(49); // ','
break;
case 51: // '.'
shift(51); // '.'
break;
case 56: // ';'
shift(56); // ';'
break;
case 54: // ':'
shift(54); // ':'
break;
case 36: // '!'
shift(36); // '!'
break;
case 276: // '|'
shift(276); // '|'
break;
case 40: // '$$'
shift(40); // '$$'
break;
case 5: // Annotation
shift(5); // Annotation
break;
case 4: // ModuleDecl
shift(4); // ModuleDecl
break;
case 6: // OptionDecl
shift(6); // OptionDecl
break;
case 15: // AttrTest
shift(15); // AttrTest
break;
case 16: // Wildcard
shift(16); // Wildcard
break;
case 18: // IntegerLiteral
shift(18); // IntegerLiteral
break;
case 19: // DecimalLiteral
shift(19); // DecimalLiteral
break;
case 20: // DoubleLiteral
shift(20); // DoubleLiteral
break;
case 8: // Variable
shift(8); // Variable
break;
case 9: // Tag
shift(9); // Tag
break;
case 7: // Operator
shift(7); // Operator
break;
case 35: // EOF
shift(35); // EOF
break;
default:
parse_EQName();
}
eventHandler.endNonterminal("start", e0);
};
this.parse_StartTag = function()
{
eventHandler.startNonterminal("StartTag", e0);
lookahead1W(8); // QName | S^WS | EOF | '"' | "'" | '/>' | '=' | '>'
switch (l1)
{
case 61: // '>'
shift(61); // '>'
break;
case 53: // '/>'
shift(53); // '/>'
break;
case 29: // QName
shift(29); // QName
break;
case 60: // '='
shift(60); // '='
break;
case 37: // '"'
shift(37); // '"'
break;
case 41: // "'"
shift(41); // "'"
break;
default:
shift(35); // EOF
}
eventHandler.endNonterminal("StartTag", e0);
};
this.parse_TagContent = function()
{
eventHandler.startNonterminal("TagContent", e0);
lookahead1(11); // Tag | EndTag | PredefinedEntityRef | ElementContentChar | CharRef | EOF |
switch (l1)
{
case 25: // ElementContentChar
shift(25); // ElementContentChar
break;
case 9: // Tag
shift(9); // Tag
break;
case 10: // EndTag
shift(10); // EndTag
break;
case 58: // '<![CDATA['
shift(58); // '<![CDATA['
break;
case 57: // '<!--'
shift(57); // '<!--'
break;
case 21: // PredefinedEntityRef
shift(21); // PredefinedEntityRef
break;
case 31: // CharRef
shift(31); // CharRef
break;
case 275: // '{{'
shift(275); // '{{'
break;
case 278: // '}}'
shift(278); // '}}'
break;
case 274: // '{'
shift(274); // '{'
break;
default:
shift(35); // EOF
}
eventHandler.endNonterminal("TagContent", e0);
};
this.parse_AposAttr = function()
{
eventHandler.startNonterminal("AposAttr", e0);
lookahead1(10); // PredefinedEntityRef | EscapeApos | AposAttrContentChar | CharRef | EOF | "'" |
switch (l1)
{
case 23: // EscapeApos
shift(23); // EscapeApos
break;
case 27: // AposAttrContentChar
shift(27); // AposAttrContentChar
break;
case 21: // PredefinedEntityRef
shift(21); // PredefinedEntityRef
break;
case 31: // CharRef
shift(31); // CharRef
break;
case 275: // '{{'
shift(275); // '{{'
break;
case 278: // '}}'
shift(278); // '}}'
break;
case 274: // '{'
shift(274); // '{'
break;
case 41: // "'"
shift(41); // "'"
break;
default:
shift(35); // EOF
}
eventHandler.endNonterminal("AposAttr", e0);
};
this.parse_QuotAttr = function()
{
eventHandler.startNonterminal("QuotAttr", e0);
lookahead1(9); // PredefinedEntityRef | EscapeQuot | QuotAttrContentChar | CharRef | EOF | '"' |
switch (l1)
{
case 22: // EscapeQuot
shift(22); // EscapeQuot
break;
case 26: // QuotAttrContentChar
shift(26); // QuotAttrContentChar
break;
case 21: // PredefinedEntityRef
shift(21); // PredefinedEntityRef
break;
case 31: // CharRef
shift(31); // CharRef
break;
case 275: // '{{'
shift(275); // '{{'
break;
case 278: // '}}'
shift(278); // '}}'
break;
case 274: // '{'
shift(274); // '{'
break;
case 37: // '"'
shift(37); // '"'
break;
default:
shift(35); // EOF
}
eventHandler.endNonterminal("QuotAttr", e0);
};
this.parse_CData = function()
{
eventHandler.startNonterminal("CData", e0);
lookahead1(1); // CDataSectionContents | EOF | ']]>'
switch (l1)
{
case 14: // CDataSectionContents
shift(14); // CDataSectionContents
break;
case 67: // ']]>'
shift(67); // ']]>'
break;
default:
shift(35); // EOF
}
eventHandler.endNonterminal("CData", e0);
};
this.parse_XMLComment = function()
{
eventHandler.startNonterminal("XMLComment", e0);
lookahead1(0); // DirCommentContents | EOF | '-->'
switch (l1)
{
case 12: // DirCommentContents
shift(12); // DirCommentContents
break;
case 50: // '-->'
shift(50); // '-->'
break;
default:
shift(35); // EOF
}
eventHandler.endNonterminal("XMLComment", e0);
};
this.parse_PI = function()
{
eventHandler.startNonterminal("PI", e0);
lookahead1(3); // DirPIContents | EOF | '?' | '?>'
switch (l1)
{
case 13: // DirPIContents
shift(13); // DirPIContents
break;
case 62: // '?'
shift(62); // '?'
break;
case 63: // '?>'
shift(63); // '?>'
break;
default:
shift(35); // EOF
}
eventHandler.endNonterminal("PI", e0);
};
this.parse_Pragma = function()
{
eventHandler.startNonterminal("Pragma", e0);
lookahead1(2); // PragmaContents | EOF | '#' | '#)'
switch (l1)
{
case 11: // PragmaContents
shift(11); // PragmaContents
break;
case 38: // '#'
shift(38); // '#'
break;
case 39: // '#)'
shift(39); // '#)'
break;
default:
shift(35); // EOF
}
eventHandler.endNonterminal("Pragma", e0);
};
this.parse_Comment = function()
{
eventHandler.startNonterminal("Comment", e0);
lookahead1(4); // CommentContents | EOF | '(:' | ':)'
switch (l1)
{
case 55: // ':)'
shift(55); // ':)'
break;
case 44: // '(:'
shift(44); // '(:'
break;
case 32: // CommentContents
shift(32); // CommentContents
break;
default:
shift(35); // EOF
}
eventHandler.endNonterminal("Comment", e0);
};
this.parse_CommentDoc = function()
{
eventHandler.startNonterminal("CommentDoc", e0);
lookahead1(6); // DocTag | DocCommentContents | EOF | '(:' | ':)'
switch (l1)
{
case 33: // DocTag
shift(33); // DocTag
break;
case 34: // DocCommentContents
shift(34); // DocCommentContents
break;
case 55: // ':)'
shift(55); // ':)'
break;
case 44: // '(:'
shift(44); // '(:'
break;
default:
shift(35); // EOF
}
eventHandler.endNonterminal("CommentDoc", e0);
};
this.parse_QuotString = function()
{
eventHandler.startNonterminal("QuotString", e0);
lookahead1(5); // JSONChar | JSONCharRef | JSONPredefinedCharRef | EOF | '"'
switch (l1)
{
case 3: // JSONPredefinedCharRef
shift(3); // JSONPredefinedCharRef
break;
case 2: // JSONCharRef
shift(2); // JSONCharRef
break;
case 1: // JSONChar
shift(1); // JSONChar
break;
case 37: // '"'
shift(37); // '"'
break;
default:
shift(35); // EOF
}
eventHandler.endNonterminal("QuotString", e0);
};
this.parse_AposString = function()
{
eventHandler.startNonterminal("AposString", e0);
lookahead1(7); // PredefinedEntityRef | EscapeApos | AposChar | CharRef | EOF | "'"
switch (l1)
{
case 21: // PredefinedEntityRef
shift(21); // PredefinedEntityRef
break;
case 31: // CharRef
shift(31); // CharRef
break;
case 23: // EscapeApos
shift(23); // EscapeApos
break;
case 24: // AposChar
shift(24); // AposChar
break;
case 41: // "'"
shift(41); // "'"
break;
default:
shift(35); // EOF
}
eventHandler.endNonterminal("AposString", e0);
};
this.parse_Prefix = function()
{
eventHandler.startNonterminal("Prefix", e0);
lookahead1W(13); // NCName^Token | S^WS | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' |
whitespace();
parse_NCName();
eventHandler.endNonterminal("Prefix", e0);
};
this.parse__EQName = function()
{
eventHandler.startNonterminal("_EQName", e0);
lookahead1W(12); // EQName^Token | S^WS | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' |
whitespace();
parse_EQName();
eventHandler.endNonterminal("_EQName", e0);
};
function parse_EQName()
{
eventHandler.startNonterminal("EQName", e0);
switch (l1)
{
case 80: // 'attribute'
shift(80); // 'attribute'
break;
case 94: // 'comment'
shift(94); // 'comment'
break;
case 118: // 'document-node'
shift(118); // 'document-node'
break;
case 119: // 'element'
shift(119); // 'element'
break;
case 122: // 'empty-sequence'
shift(122); // 'empty-sequence'
break;
case 143: // 'function'
shift(143); // 'function'
break;
case 150: // 'if'
shift(150); // 'if'
break;
case 163: // 'item'
shift(163); // 'item'
break;
case 183: // 'namespace-node'
shift(183); // 'namespace-node'
break;
case 189: // 'node'
shift(189); // 'node'
break;
case 214: // 'processing-instruction'
shift(214); // 'processing-instruction'
break;
case 224: // 'schema-attribute'
shift(224); // 'schema-attribute'
break;
case 225: // 'schema-element'
shift(225); // 'schema-element'
break;
case 241: // 'switch'
shift(241); // 'switch'
break;
case 242: // 'text'
shift(242); // 'text'
break;
case 251: // 'typeswitch'
shift(251); // 'typeswitch'
break;
default:
parse_FunctionName();
}
eventHandler.endNonterminal("EQName", e0);
}
function parse_FunctionName()
{
eventHandler.startNonterminal("FunctionName", e0);
switch (l1)
{
case 17: // EQName^Token
shift(17); // EQName^Token
break;
case 68: // 'after'
shift(68); // 'after'
break;
case 71: // 'ancestor'
shift(71); // 'ancestor'
break;
case 72: // 'ancestor-or-self'
shift(72); // 'ancestor-or-self'
break;
case 73: // 'and'
shift(73); // 'and'
break;
case 77: // 'as'
shift(77); // 'as'
break;
case 78: // 'ascending'
shift(78); // 'ascending'
break;
case 82: // 'before'
shift(82); // 'before'
break;
case 86: // 'case'
shift(86); // 'case'
break;
case 87: // 'cast'
shift(87); // 'cast'
break;
case 88: // 'castable'
shift(88); // 'castable'
break;
case 91: // 'child'
shift(91); // 'child'
break;
case 92: // 'collation'
shift(92); // 'collation'
break;
case 101: // 'copy'
shift(101); // 'copy'
break;
case 103: // 'count'
shift(103); // 'count'
break;
case 106: // 'declare'
shift(106); // 'declare'
break;
case 107: // 'default'
shift(107); // 'default'
break;
case 108: // 'delete'
shift(108); // 'delete'
break;
case 109: // 'descendant'
shift(109); // 'descendant'
break;
case 110: // 'descendant-or-self'
shift(110); // 'descendant-or-self'
break;
case 111: // 'descending'
shift(111); // 'descending'
break;
case 116: // 'div'
shift(116); // 'div'
break;
case 117: // 'document'
shift(117); // 'document'
break;
case 120: // 'else'
shift(120); // 'else'
break;
case 121: // 'empty'
shift(121); // 'empty'
break;
case 124: // 'end'
shift(124); // 'end'
break;
case 126: // 'eq'
shift(126); // 'eq'
break;
case 127: // 'every'
shift(127); // 'every'
break;
case 129: // 'except'
shift(129); // 'except'
break;
case 132: // 'first'
shift(132); // 'first'
break;
case 133: // 'following'
shift(133); // 'following'
break;
case 134: // 'following-sibling'
shift(134); // 'following-sibling'
break;
case 135: // 'for'
shift(135); // 'for'
break;
case 144: // 'ge'
shift(144); // 'ge'
break;
case 146: // 'group'
shift(146); // 'group'
break;
case 148: // 'gt'
shift(148); // 'gt'
break;
case 149: // 'idiv'
shift(149); // 'idiv'
break;
case 151: // 'import'
shift(151); // 'import'
break;
case 157: // 'insert'
shift(157); // 'insert'
break;
case 158: // 'instance'
shift(158); // 'instance'
break;
case 160: // 'intersect'
shift(160); // 'intersect'
break;
case 161: // 'into'
shift(161); // 'into'
break;
case 162: // 'is'
shift(162); // 'is'
break;
case 168: // 'last'
shift(168); // 'last'
break;
case 170: // 'le'
shift(170); // 'le'
break;
case 172: // 'let'
shift(172); // 'let'
break;
case 176: // 'lt'
shift(176); // 'lt'
break;
case 178: // 'mod'
shift(178); // 'mod'
break;
case 179: // 'modify'
shift(179); // 'modify'
break;
case 180: // 'module'
shift(180); // 'module'
break;
case 182: // 'namespace'
shift(182); // 'namespace'
break;
case 184: // 'ne'
shift(184); // 'ne'
break;
case 196: // 'only'
shift(196); // 'only'
break;
case 198: // 'or'
shift(198); // 'or'
break;
case 199: // 'order'
shift(199); // 'order'
break;
case 200: // 'ordered'
shift(200); // 'ordered'
break;
case 204: // 'parent'
shift(204); // 'parent'
break;
case 210: // 'preceding'
shift(210); // 'preceding'
break;
case 211: // 'preceding-sibling'
shift(211); // 'preceding-sibling'
break;
case 216: // 'rename'
shift(216); // 'rename'
break;
case 217: // 'replace'
shift(217); // 'replace'
break;
case 218: // 'return'
shift(218); // 'return'
break;
case 222: // 'satisfies'
shift(222); // 'satisfies'
break;
case 227: // 'self'
shift(227); // 'self'
break;
case 233: // 'some'
shift(233); // 'some'
break;
case 234: // 'stable'
shift(234); // 'stable'
break;
case 235: // 'start'
shift(235); // 'start'
break;
case 246: // 'to'
shift(246); // 'to'
break;
case 247: // 'treat'
shift(247); // 'treat'
break;
case 248: // 'try'
shift(248); // 'try'
break;
case 252: // 'union'
shift(252); // 'union'
break;
case 254: // 'unordered'
shift(254); // 'unordered'
break;
case 258: // 'validate'
shift(258); // 'validate'
break;
case 264: // 'where'
shift(264); // 'where'
break;
case 268: // 'with'
shift(268); // 'with'
break;
case 272: // 'xquery'
shift(272); // 'xquery'
break;
case 70: // 'allowing'
shift(70); // 'allowing'
break;
case 79: // 'at'
shift(79); // 'at'
break;
case 81: // 'base-uri'
shift(81); // 'base-uri'
break;
case 83: // 'boundary-space'
shift(83); // 'boundary-space'
break;
case 84: // 'break'
shift(84); // 'break'
break;
case 89: // 'catch'
shift(89); // 'catch'
break;
case 96: // 'construction'
shift(96); // 'construction'
break;
case 99: // 'context'
shift(99); // 'context'
break;
case 100: // 'continue'
shift(100); // 'continue'
break;
case 102: // 'copy-namespaces'
shift(102); // 'copy-namespaces'
break;
case 104: // 'decimal-format'
shift(104); // 'decimal-format'
break;
case 123: // 'encoding'
shift(123); // 'encoding'
break;
case 130: // 'exit'
shift(130); // 'exit'
break;
case 131: // 'external'
shift(131); // 'external'
break;
case 139: // 'ft-option'
shift(139); // 'ft-option'
break;
case 152: // 'in'
shift(152); // 'in'
break;
case 153: // 'index'
shift(153); // 'index'
break;
case 159: // 'integrity'
shift(159); // 'integrity'
break;
case 169: // 'lax'
shift(169); // 'lax'
break;
case 190: // 'nodes'
shift(190); // 'nodes'
break;
case 197: // 'option'
shift(197); // 'option'
break;
case 201: // 'ordering'
shift(201); // 'ordering'
break;
case 220: // 'revalidation'
shift(220); // 'revalidation'
break;
case 223: // 'schema'
shift(223); // 'schema'
break;
case 226: // 'score'
shift(226); // 'score'
break;
case 232: // 'sliding'
shift(232); // 'sliding'
break;
case 238: // 'strict'
shift(238); // 'strict'
break;
case 249: // 'tumbling'
shift(249); // 'tumbling'
break;
case 250: // 'type'
shift(250); // 'type'
break;
case 255: // 'updating'
shift(255); // 'updating'
break;
case 259: // 'value'
shift(259); // 'value'
break;
case 260: // 'variable'
shift(260); // 'variable'
break;
case 261: // 'version'
shift(261); // 'version'
break;
case 265: // 'while'
shift(265); // 'while'
break;
case 95: // 'constraint'
shift(95); // 'constraint'
break;
case 174: // 'loop'
shift(174); // 'loop'
break;
default:
shift(219); // 'returning'
}
eventHandler.endNonterminal("FunctionName", e0);
}
function parse_NCName()
{
eventHandler.startNonterminal("NCName", e0);
switch (l1)
{
case 28: // NCName^Token
shift(28); // NCName^Token
break;
case 68: // 'after'
shift(68); // 'after'
break;
case 73: // 'and'
shift(73); // 'and'
break;
case 77: // 'as'
shift(77); // 'as'
break;
case 78: // 'ascending'
shift(78); // 'ascending'
break;
case 82: // 'before'
shift(82); // 'before'
break;
case 86: // 'case'
shift(86); // 'case'
break;
case 87: // 'cast'
shift(87); // 'cast'
break;
case 88: // 'castable'
shift(88); // 'castable'
break;
case 92: // 'collation'
shift(92); // 'collation'
break;
case 103: // 'count'
shift(103); // 'count'
break;
case 107: // 'default'
shift(107); // 'default'
break;
case 111: // 'descending'
shift(111); // 'descending'
break;
case 116: // 'div'
shift(116); // 'div'
break;
case 120: // 'else'
shift(120); // 'else'
break;
case 121: // 'empty'
shift(121); // 'empty'
break;
case 124: // 'end'
shift(124); // 'end'
break;
case 126: // 'eq'
shift(126); // 'eq'
break;
case 129: // 'except'
shift(129); // 'except'
break;
case 135: // 'for'
shift(135); // 'for'
break;
case 144: // 'ge'
shift(144); // 'ge'
break;
case 146: // 'group'
shift(146); // 'group'
break;
case 148: // 'gt'
shift(148); // 'gt'
break;
case 149: // 'idiv'
shift(149); // 'idiv'
break;
case 158: // 'instance'
shift(158); // 'instance'
break;
case 160: // 'intersect'
shift(160); // 'intersect'
break;
case 161: // 'into'
shift(161); // 'into'
break;
case 162: // 'is'
shift(162); // 'is'
break;
case 170: // 'le'
shift(170); // 'le'
break;
case 172: // 'let'
shift(172); // 'let'
break;
case 176: // 'lt'
shift(176); // 'lt'
break;
case 178: // 'mod'
shift(178); // 'mod'
break;
case 179: // 'modify'
shift(179); // 'modify'
break;
case 184: // 'ne'
shift(184); // 'ne'
break;
case 196: // 'only'
shift(196); // 'only'
break;
case 198: // 'or'
shift(198); // 'or'
break;
case 199: // 'order'
shift(199); // 'order'
break;
case 218: // 'return'
shift(218); // 'return'
break;
case 222: // 'satisfies'
shift(222); // 'satisfies'
break;
case 234: // 'stable'
shift(234); // 'stable'
break;
case 235: // 'start'
shift(235); // 'start'
break;
case 246: // 'to'
shift(246); // 'to'
break;
case 247: // 'treat'
shift(247); // 'treat'
break;
case 252: // 'union'
shift(252); // 'union'
break;
case 264: // 'where'
shift(264); // 'where'
break;
case 268: // 'with'
shift(268); // 'with'
break;
case 71: // 'ancestor'
shift(71); // 'ancestor'
break;
case 72: // 'ancestor-or-self'
shift(72); // 'ancestor-or-self'
break;
case 80: // 'attribute'
shift(80); // 'attribute'
break;
case 91: // 'child'
shift(91); // 'child'
break;
case 94: // 'comment'
shift(94); // 'comment'
break;
case 101: // 'copy'
shift(101); // 'copy'
break;
case 106: // 'declare'
shift(106); // 'declare'
break;
case 108: // 'delete'
shift(108); // 'delete'
break;
case 109: // 'descendant'
shift(109); // 'descendant'
break;
case 110: // 'descendant-or-self'
shift(110); // 'descendant-or-self'
break;
case 117: // 'document'
shift(117); // 'document'
break;
case 118: // 'document-node'
shift(118); // 'document-node'
break;
case 119: // 'element'
shift(119); // 'element'
break;
case 122: // 'empty-sequence'
shift(122); // 'empty-sequence'
break;
case 127: // 'every'
shift(127); // 'every'
break;
case 132: // 'first'
shift(132); // 'first'
break;
case 133: // 'following'
shift(133); // 'following'
break;
case 134: // 'following-sibling'
shift(134); // 'following-sibling'
break;
case 143: // 'function'
shift(143); // 'function'
break;
case 150: // 'if'
shift(150); // 'if'
break;
case 151: // 'import'
shift(151); // 'import'
break;
case 157: // 'insert'
shift(157); // 'insert'
break;
case 163: // 'item'
shift(163); // 'item'
break;
case 168: // 'last'
shift(168); // 'last'
break;
case 180: // 'module'
shift(180); // 'module'
break;
case 182: // 'namespace'
shift(182); // 'namespace'
break;
case 183: // 'namespace-node'
shift(183); // 'namespace-node'
break;
case 189: // 'node'
shift(189); // 'node'
break;
case 200: // 'ordered'
shift(200); // 'ordered'
break;
case 204: // 'parent'
shift(204); // 'parent'
break;
case 210: // 'preceding'
shift(210); // 'preceding'
break;
case 211: // 'preceding-sibling'
shift(211); // 'preceding-sibling'
break;
case 214: // 'processing-instruction'
shift(214); // 'processing-instruction'
break;
case 216: // 'rename'
shift(216); // 'rename'
break;
case 217: // 'replace'
shift(217); // 'replace'
break;
case 224: // 'schema-attribute'
shift(224); // 'schema-attribute'
break;
case 225: // 'schema-element'
shift(225); // 'schema-element'
break;
case 227: // 'self'
shift(227); // 'self'
break;
case 233: // 'some'
shift(233); // 'some'
break;
case 241: // 'switch'
shift(241); // 'switch'
break;
case 242: // 'text'
shift(242); // 'text'
break;
case 248: // 'try'
shift(248); // 'try'
break;
case 251: // 'typeswitch'
shift(251); // 'typeswitch'
break;
case 254: // 'unordered'
shift(254); // 'unordered'
break;
case 258: // 'validate'
shift(258); // 'validate'
break;
case 260: // 'variable'
shift(260); // 'variable'
break;
case 272: // 'xquery'
shift(272); // 'xquery'
break;
case 70: // 'allowing'
shift(70); // 'allowing'
break;
case 79: // 'at'
shift(79); // 'at'
break;
case 81: // 'base-uri'
shift(81); // 'base-uri'
break;
case 83: // 'boundary-space'
shift(83); // 'boundary-space'
break;
case 84: // 'break'
shift(84); // 'break'
break;
case 89: // 'catch'
shift(89); // 'catch'
break;
case 96: // 'construction'
shift(96); // 'construction'
break;
case 99: // 'context'
shift(99); // 'context'
break;
case 100: // 'continue'
shift(100); // 'continue'
break;
case 102: // 'copy-namespaces'
shift(102); // 'copy-namespaces'
break;
case 104: // 'decimal-format'
shift(104); // 'decimal-format'
break;
case 123: // 'encoding'
shift(123); // 'encoding'
break;
case 130: // 'exit'
shift(130); // 'exit'
break;
case 131: // 'external'
shift(131); // 'external'
break;
case 139: // 'ft-option'
shift(139); // 'ft-option'
break;
case 152: // 'in'
shift(152); // 'in'
break;
case 153: // 'index'
shift(153); // 'index'
break;
case 159: // 'integrity'
shift(159); // 'integrity'
break;
case 169: // 'lax'
shift(169); // 'lax'
break;
case 190: // 'nodes'
shift(190); // 'nodes'
break;
case 197: // 'option'
shift(197); // 'option'
break;
case 201: // 'ordering'
shift(201); // 'ordering'
break;
case 220: // 'revalidation'
shift(220); // 'revalidation'
break;
case 223: // 'schema'
shift(223); // 'schema'
break;
case 226: // 'score'
shift(226); // 'score'
break;
case 232: // 'sliding'
shift(232); // 'sliding'
break;
case 238: // 'strict'
shift(238); // 'strict'
break;
case 249: // 'tumbling'
shift(249); // 'tumbling'
break;
case 250: // 'type'
shift(250); // 'type'
break;
case 255: // 'updating'
shift(255); // 'updating'
break;
case 259: // 'value'
shift(259); // 'value'
break;
case 261: // 'version'
shift(261); // 'version'
break;
case 265: // 'while'
shift(265); // 'while'
break;
case 95: // 'constraint'
shift(95); // 'constraint'
break;
case 174: // 'loop'
shift(174); // 'loop'
break;
default:
shift(219); // 'returning'
}
eventHandler.endNonterminal("NCName", e0);
}
function shift(t)
{
if (l1 == t)
{
whitespace();
eventHandler.terminal(JSONiqTokenizer.TOKEN[l1], b1, e1 > size ? size : e1);
b0 = b1; e0 = e1; l1 = 0;
}
else
{
error(b1, e1, 0, l1, t);
}
}
function whitespace()
{
if (e0 != b1)
{
b0 = e0;
e0 = b1;
eventHandler.whitespace(b0, e0);
}
}
function matchW(set)
{
var code;
for (;;)
{
code = match(set);
if (code != 30) // S^WS
{
break;
}
}
return code;
}
function lookahead1W(set)
{
if (l1 == 0)
{
l1 = matchW(set);
b1 = begin;
e1 = end;
}
}
function lookahead1(set)
{
if (l1 == 0)
{
l1 = match(set);
b1 = begin;
e1 = end;
}
}
function error(b, e, s, l, t)
{
throw new self.ParseException(b, e, s, l, t);
}
var lk, b0, e0;
var l1, b1, e1;
var eventHandler;
var input;
var size;
var begin;
var end;
function match(tokenSetId)
{
var nonbmp = false;
begin = end;
var current = end;
var result = JSONiqTokenizer.INITIAL[tokenSetId];
var state = 0;
for (var code = result & 4095; code != 0; )
{
var charclass;
var c0 = current < size ? input.charCodeAt(current) : 0;
++current;
if (c0 < 0x80)
{
charclass = JSONiqTokenizer.MAP0[c0];
}
else if (c0 < 0xd800)
{
var c1 = c0 >> 4;
charclass = JSONiqTokenizer.MAP1[(c0 & 15) + JSONiqTokenizer.MAP1[(c1 & 31) + JSONiqTokenizer.MAP1[c1 >> 5]]];
}
else
{
if (c0 < 0xdc00)
{
var c1 = current < size ? input.charCodeAt(current) : 0;
if (c1 >= 0xdc00 && c1 < 0xe000)
{
++current;
c0 = ((c0 & 0x3ff) << 10) + (c1 & 0x3ff) + 0x10000;
nonbmp = true;
}
}
var lo = 0, hi = 5;
for (var m = 3; ; m = (hi + lo) >> 1)
{
if (JSONiqTokenizer.MAP2[m] > c0) hi = m - 1;
else if (JSONiqTokenizer.MAP2[6 + m] < c0) lo = m + 1;
else {charclass = JSONiqTokenizer.MAP2[12 + m]; break;}
if (lo > hi) {charclass = 0; break;}
}
}
state = code;
var i0 = (charclass << 12) + code - 1;
code = JSONiqTokenizer.TRANSITION[(i0 & 15) + JSONiqTokenizer.TRANSITION[i0 >> 4]];
if (code > 4095)
{
result = code;
code &= 4095;
end = current;
}
}
result >>= 12;
if (result == 0)
{
end = current - 1;
var c1 = end < size ? input.charCodeAt(end) : 0;
if (c1 >= 0xdc00 && c1 < 0xe000) --end;
return error(begin, end, state, -1, -1);
}
if (nonbmp)
{
for (var i = result >> 9; i > 0; --i)
{
--end;
var c1 = end < size ? input.charCodeAt(end) : 0;
if (c1 >= 0xdc00 && c1 < 0xe000) --end;
}
}
else
{
end -= result >> 9;
}
return (result & 511) - 1;
}
}
JSONiqTokenizer.getTokenSet = function(tokenSetId)
{
var set = [];
var s = tokenSetId < 0 ? - tokenSetId : INITIAL[tokenSetId] & 4095;
for (var i = 0; i < 279; i += 32)
{
var j = i;
var i0 = (i >> 5) * 2066 + s - 1;
var i1 = i0 >> 2;
var i2 = i1 >> 2;
var f = JSONiqTokenizer.EXPECTED[(i0 & 3) +