2014-12-04 17:58:05 +01:00
/* parser generated by jison 0.4.15 */
/ *
Returns a Parser object of the following structure :
Parser : {
yy : { }
}
Parser . prototype : {
yy : { } ,
trace : function ( ) ,
symbols _ : { associative list : name == > number } ,
terminals _ : { associative list : number == > name } ,
productions _ : [ ... ] ,
performAction : function anonymous ( yytext , yyleng , yylineno , yy , yystate , $$ , _$ ) ,
table : [ ... ] ,
defaultActions : { ... } ,
parseError : function ( str , hash ) ,
parse : function ( input ) ,
lexer : {
EOF : 1 ,
parseError : function ( str , hash ) ,
setInput : function ( input ) ,
input : function ( ) ,
unput : function ( str ) ,
more : function ( ) ,
less : function ( n ) ,
pastInput : function ( ) ,
upcomingInput : function ( ) ,
showPosition : function ( ) ,
test _match : function ( regex _match _array , rule _index ) ,
next : function ( ) ,
lex : function ( ) ,
begin : function ( condition ) ,
popState : function ( ) ,
_currentRules : function ( ) ,
topState : function ( ) ,
pushState : function ( condition ) ,
options : {
ranges : boolean ( optional : true == > token location info will include a . range [ ] member )
flex : boolean ( optional : true == > flex - like lexing behaviour where the rules are tested exhaustively to find the longest match )
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 )
} ,
performAction : function ( yy , yy _ , $avoiding _name _collisions , YY _START ) ,
rules : [ ... ] ,
conditions : { associative list : name == > set } ,
}
}
token location info ( @ $ , _$ , etc . ) : {
first _line : n ,
last _line : n ,
first _column : n ,
last _column : n ,
range : [ start _number , end _number ] ( where the numbers are indexes into the input string , regular zero - based )
}
the parseError function receives a 'hash' object with these members for lexer and parser errors : {
text : ( matched text )
token : ( the produced terminal token , if any )
line : ( yylineno )
}
while parser ( grammar ) errors will also provide these members , i . e . parser errors deliver a superset of attributes : {
loc : ( yylloc )
expected : ( string describing the set of expected tokens )
recoverable : ( boolean : TRUE when the parser has a error recovery rule available for this particular error )
}
* /
2015-10-24 21:31:48 +01:00
var dot = ( function ( ) {
2014-12-04 17:58:05 +01:00
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 , 6 ] , $V2 = [ 1 , 12 ] , $V3 = [ 1 , 13 ] , $V4 = [ 1 , 14 ] , $V5 = [ 1 , 15 ] , $V6 = [ 1 , 16 ] , $V7 = [ 1 , 17 ] , $V8 = [ 1 , 18 ] , $V9 = [ 1 , 19 ] , $Va = [ 1 , 20 ] , $Vb = [ 1 , 21 ] , $Vc = [ 1 , 22 ] , $Vd = [ 8 , 16 , 17 , 18 , 19 , 20 , 21 , 22 , 23 , 24 , 25 , 26 ] , $Ve = [ 1 , 37 ] , $Vf = [ 1 , 33 ] , $Vg = [ 1 , 34 ] , $Vh = [ 1 , 35 ] , $Vi = [ 1 , 36 ] , $Vj = [ 8 , 10 , 16 , 17 , 18 , 19 , 20 , 21 , 22 , 23 , 24 , 25 , 26 , 28 , 32 , 37 , 39 , 40 , 45 , 57 , 58 ] , $Vk = [ 10 , 28 ] , $Vl = [ 10 , 28 , 37 , 57 , 58 ] , $Vm = [ 2 , 49 ] , $Vn = [ 1 , 45 ] , $Vo = [ 1 , 48 ] , $Vp = [ 1 , 49 ] , $Vq = [ 1 , 52 ] , $Vr = [ 2 , 65 ] , $Vs = [ 1 , 65 ] , $Vt = [ 1 , 66 ] , $Vu = [ 1 , 67 ] , $Vv = [ 1 , 68 ] , $Vw = [ 1 , 69 ] , $Vx = [ 1 , 70 ] , $Vy = [ 1 , 71 ] , $Vz = [ 1 , 72 ] , $VA = [ 1 , 73 ] , $VB = [ 8 , 16 , 17 , 18 , 19 , 20 , 21 , 22 , 23 , 24 , 25 , 26 , 47 ] , $VC = [ 10 , 28 , 37 ] ;
var parser = { trace : function trace ( ) { } ,
yy : { } ,
symbols _ : { "error" : 2 , "expressions" : 3 , "graph" : 4 , "EOF" : 5 , "graphStatement" : 6 , "idStatement" : 7 , "{" : 8 , "stmt_list" : 9 , "}" : 10 , "strict" : 11 , "GRAPH" : 12 , "DIGRAPH" : 13 , "textNoTags" : 14 , "textNoTagsToken" : 15 , "ALPHA" : 16 , "NUM" : 17 , "COLON" : 18 , "PLUS" : 19 , "EQUALS" : 20 , "MULT" : 21 , "DOT" : 22 , "BRKT" : 23 , "SPACE" : 24 , "MINUS" : 25 , "keywords" : 26 , "stmt" : 27 , ";" : 28 , "node_stmt" : 29 , "edge_stmt" : 30 , "attr_stmt" : 31 , "=" : 32 , "subgraph" : 33 , "attr_list" : 34 , "NODE" : 35 , "EDGE" : 36 , "[" : 37 , "a_list" : 38 , "]" : 39 , "," : 40 , "edgeRHS" : 41 , "node_id" : 42 , "edgeop" : 43 , "port" : 44 , ":" : 45 , "compass_pt" : 46 , "SUBGRAPH" : 47 , "n" : 48 , "ne" : 49 , "e" : 50 , "se" : 51 , "s" : 52 , "sw" : 53 , "w" : 54 , "nw" : 55 , "c" : 56 , "ARROW_POINT" : 57 , "ARROW_OPEN" : 58 , "$accept" : 0 , "$end" : 1 } ,
terminals _ : { 2 : "error" , 5 : "EOF" , 8 : "{" , 10 : "}" , 11 : "strict" , 12 : "GRAPH" , 13 : "DIGRAPH" , 16 : "ALPHA" , 17 : "NUM" , 18 : "COLON" , 19 : "PLUS" , 20 : "EQUALS" , 21 : "MULT" , 22 : "DOT" , 23 : "BRKT" , 24 : "SPACE" , 25 : "MINUS" , 26 : "keywords" , 28 : ";" , 32 : "=" , 35 : "NODE" , 36 : "EDGE" , 37 : "[" , 39 : "]" , 40 : "," , 45 : ":" , 47 : "SUBGRAPH" , 48 : "n" , 49 : "ne" , 50 : "e" , 51 : "se" , 52 : "s" , 53 : "sw" , 54 : "w" , 55 : "nw" , 56 : "c" , 57 : "ARROW_POINT" , 58 : "ARROW_OPEN" } ,
productions _ : [ 0 , [ 3 , 2 ] , [ 4 , 5 ] , [ 4 , 6 ] , [ 4 , 4 ] , [ 6 , 1 ] , [ 6 , 1 ] , [ 7 , 1 ] , [ 14 , 1 ] , [ 14 , 2 ] , [ 15 , 1 ] , [ 15 , 1 ] , [ 15 , 1 ] , [ 15 , 1 ] , [ 15 , 1 ] , [ 15 , 1 ] , [ 15 , 1 ] , [ 15 , 1 ] , [ 15 , 1 ] , [ 15 , 1 ] , [ 15 , 1 ] , [ 9 , 1 ] , [ 9 , 3 ] , [ 27 , 1 ] , [ 27 , 1 ] , [ 27 , 1 ] , [ 27 , 3 ] , [ 27 , 1 ] , [ 31 , 2 ] , [ 31 , 2 ] , [ 31 , 2 ] , [ 34 , 4 ] , [ 34 , 3 ] , [ 34 , 3 ] , [ 34 , 2 ] , [ 38 , 5 ] , [ 38 , 5 ] , [ 38 , 3 ] , [ 30 , 3 ] , [ 30 , 3 ] , [ 30 , 2 ] , [ 30 , 2 ] , [ 41 , 3 ] , [ 41 , 3 ] , [ 41 , 2 ] , [ 41 , 2 ] , [ 29 , 2 ] , [ 29 , 1 ] , [ 42 , 2 ] , [ 42 , 1 ] , [ 44 , 4 ] , [ 44 , 2 ] , [ 44 , 2 ] , [ 33 , 5 ] , [ 33 , 4 ] , [ 33 , 3 ] , [ 46 , 1 ] , [ 46 , 1 ] , [ 46 , 1 ] , [ 46 , 1 ] , [ 46 , 1 ] , [ 46 , 1 ] , [ 46 , 1 ] , [ 46 , 1 ] , [ 46 , 1 ] , [ 46 , 0 ] , [ 43 , 1 ] , [ 43 , 1 ] ] ,
performAction : function anonymous ( yytext , yyleng , yylineno , yy , yystate /* action[1] */ , $$ /* vstack */ , _$ /* lstack */ ) {
/* this == yyval */
var $0 = $$ . length - 1 ;
switch ( yystate ) {
case 1 :
this . $ = $$ [ $0 - 1 ] ;
break ;
case 2 :
this . $ = $$ [ $0 - 4 ] ;
break ;
case 3 :
this . $ = $$ [ $0 - 5 ] ;
break ;
case 4 :
this . $ = $$ [ $0 - 3 ] ;
break ;
case 8 : case 10 : case 11 :
this . $ = $$ [ $0 ] ;
break ;
case 9 :
this . $ = $$ [ $0 - 1 ] + '' + $$ [ $0 ] ;
break ;
case 12 : case 13 : case 14 : case 15 : case 16 : case 18 : case 19 : case 20 :
this . $ = $$ [ $0 ] ;
break ;
case 17 :
this . $ = '<br>' ;
break ;
case 39 :
this . $ = 'oy' ;
break ;
case 40 :
yy . addLink ( $$ [ $0 - 1 ] , $$ [ $0 ] . id , $$ [ $0 ] . op ) ;
this . $ = 'oy' ;
break ;
case 42 :
yy . addLink ( $$ [ $0 - 1 ] , $$ [ $0 ] . id , $$ [ $0 ] . op ) ;
this . $ = { op : $$ [ $0 - 2 ] , id : $$ [ $0 - 1 ] } ;
break ;
case 44 :
this . $ = { op : $$ [ $0 - 1 ] , id : $$ [ $0 ] } ;
break ;
case 48 :
yy . addVertex ( $$ [ $0 - 1 ] ) ; this . $ = $$ [ $0 - 1 ] ;
break ;
case 49 :
yy . addVertex ( $$ [ $0 ] ) ; this . $ = $$ [ $0 ] ;
break ;
case 66 :
this . $ = 'arrow' ;
break ;
case 67 :
this . $ = 'arrow_open' ;
break ;
}
} ,
table : [ { 3 : 1 , 4 : 2 , 6 : 3 , 11 : [ 1 , 4 ] , 12 : $V0 , 13 : $V1 } , { 1 : [ 3 ] } , { 5 : [ 1 , 7 ] } , { 7 : 8 , 8 : [ 1 , 9 ] , 14 : 10 , 15 : 11 , 16 : $V2 , 17 : $V3 , 18 : $V4 , 19 : $V5 , 20 : $V6 , 21 : $V7 , 22 : $V8 , 23 : $V9 , 24 : $Va , 25 : $Vb , 26 : $Vc } , { 6 : 23 , 12 : $V0 , 13 : $V1 } , o ( $Vd , [ 2 , 5 ] ) , o ( $Vd , [ 2 , 6 ] ) , { 1 : [ 2 , 1 ] } , { 8 : [ 1 , 24 ] } , { 7 : 30 , 8 : $Ve , 9 : 25 , 12 : $Vf , 14 : 10 , 15 : 11 , 16 : $V2 , 17 : $V3 , 18 : $V4 , 19 : $V5 , 20 : $V6 , 21 : $V7 , 22 : $V8 , 23 : $V9 , 24 : $Va , 25 : $Vb , 26 : $Vc , 27 : 26 , 29 : 27 , 30 : 28 , 31 : 29 , 33 : 31 , 35 : $Vg , 36 : $Vh , 42 : 32 , 47 : $Vi } , o ( [ 8 , 10 , 28 , 32 , 37 , 39 , 40 , 45 , 57 , 58 ] , [ 2 , 7 ] , { 15 : 38 , 16 : $V2 , 17 : $V3 , 18 : $V4 , 19 : $V5 , 20 : $V6 , 21 : $V7 , 22 : $V8 , 23 : $V9 , 24 : $Va , 25 : $Vb , 26 : $Vc } ) , o ( $Vj , [ 2 , 8 ] ) , o ( $Vj , [ 2 , 10 ] ) , o ( $Vj , [ 2 , 11 ] ) , o ( $Vj , [ 2 , 12 ] ) , o ( $Vj , [ 2 , 13 ] ) , o ( $Vj , [ 2 , 14 ] ) , o ( $Vj , [ 2 , 15 ] ) , o ( $Vj , [ 2 , 16 ] ) , o ( $Vj , [ 2 , 17 ] ) , o ( $Vj , [ 2 , 18 ] ) , o ( $Vj , [ 2 , 19 ] ) , o ( $Vj , [ 2 , 20 ] ) , { 7 : 39 , 14 : 10 , 15 : 11 , 16 : $V2 , 17 : $V3 , 18 : $V4 , 19 : $V5 , 20 : $V6 , 21 : $V7 , 22 : $V8 , 23 : $V9 , 24 : $Va , 25 : $Vb , 26 : $Vc } , { 7 : 30 , 8 : $Ve , 9 : 40 , 12 : $Vf , 14 : 10 , 15 : 11 , 16 : $V2 , 17 : $V3 , 18 : $V4 , 19 : $V5 , 20 : $V6 , 21 : $V7 , 22 : $V8 , 23 : $V9 , 24 : $Va , 25 : $Vb , 26 : $Vc , 27 : 26 , 29 : 27 , 30 : 28 , 31 : 29 , 33 : 31 , 35 : $Vg , 36 : $Vh , 42 : 32 , 47 : $Vi } , { 10 : [ 1 , 41 ] } , { 10 : [ 2 , 21 ] , 28 : [ 1 , 42 ] } , o ( $Vk , [ 2 , 23 ] ) , o ( $Vk , [ 2 , 24 ] ) , o ( $Vk , [ 2 , 25 ] ) , o ( $Vl , $Vm , { 44 : 44 , 32 : [ 1 , 43 ] , 45 : $Vn } ) , o ( $Vk , [ 2 , 27 ] , { 41 : 46 , 43 : 47 , 57 : $Vo , 58 : $Vp } ) , o ( $Vk , [ 2 , 47 ] , { 43 : 47 , 34 : 50 , 41 : 51 , 37 : $Vq , 57 : $Vo , 58 : $Vp } ) , { 34 : 53 , 37 : $Vq } , { 34 : 54 , 37 : $Vq } , { 34 : 55 , 37 : $Vq } , { 7 : 56 , 8 : [ 1 , 57 ] , 14 : 10 , 15 : 11 , 16 : $V2 , 17 : $V3 , 18 : $V4 , 19 : $V5 , 20 : $V6 , 21 : $V7 , 22 : $V8 , 23 : $V9 , 24 : $Va , 25 : $Vb , 26 : $Vc } , { 7 : 30 , 8 : $Ve , 9 : 58 , 12 : $Vf , 14 : 10 , 15 : 11 , 16 : $V2 , 17 : $V3 , 18 : $V4 , 19 : $V5 , 20 : $V6 , 21 : $V7 , 22 : $V8 , 23 : $V9 , 24 : $Va , 25 : $Vb , 26 : $Vc , 27 : 26 , 29 : 27 , 30 : 28 , 31 : 29 , 33 : 31 , 35 : $Vg , 36 : $Vh , 42 : 32 , 47 : $Vi } , o ( $Vj , [ 2 , 9 ] ) , { 8 : [ 1 , 59 ] } , { 10 : [ 1 , 60 ] } , { 5 : [ 2 , 4 ] } , { 7 : 30 , 8 : $Ve , 9 : 61 , 12 : $Vf , 14 : 10 , 15 : 11 , 16 : $V2 , 17 : $V3 , 18 : $V4 , 19 : $V5 , 20 : $V6 , 21 : $V7 , 22 : $V8 , 23 : $V9 , 24 : $Va , 25 : $Vb , 26 : $Vc , 27 : 26 , 29 : 27 , 30 : 28 , 31 : 29 , 33 : 31 , 35 : $Vg , 36 : $Vh , 42 : 32 , 47 : $Vi } , { 7 : 62 , 14 : 10 , 15 : 11 , 16 : $V2 , 17 : $V3 , 18 : $V4 , 19 : $V5 , 20 : $V6 , 21 : $V7 , 22 : $V8 , 23 : $V9 , 24 : $Va , 25 : $Vb , 26 : $Vc } , o ( $Vl , [ 2 , 48 ] ) , o ( $Vl , $Vr , { 14 : 10 , 15 : 11 , 7 : 63 , 46 : 64 , 16 : $V2 , 17 : $V3 , 18 : $V4 , 19 : $V5 , 20 : $V6 , 21 : $V7 , 22 : $V8 , 23 : $V9 , 24 : $Va , 25 : $Vb , 26 : $Vc , 48 : $Vs , 49 : $Vt , 50 : $Vu , 51 : $Vv , 52 : $Vw , 53 : $Vx , 54 : $Vy , 55 : $Vz , 56 : $VA } ) , o ( $Vk , [ 2 , 41 ] , { 34 : 74 , 37 : $Vq } ) , { 7 : 77 , 8 : $Ve , 14 : 10 , 15 : 11 , 16 : $V2 , 17 : $V3 , 18 : $V4 , 19 : $V5 , 20 : $V6 , 21 : $V7 , 22 : $V8 , 23 : $V9 , 24 : $Va , 25 : $Vb , 26 : $Vc , 33 : 76 , 42 : 75 , 47 : $Vi } , o ( $VB , [ 2 , 66 ] ) , o ( $VB , [ 2 , 67 ] ) , o ( $Vk , [ 2 , 46 ] ) , o ( $Vk , [ 2 , 40 ] , { 34 : 78 , 37 : $Vq } ) , { 7 : 81 , 14 : 10 , 15 : 11 , 16 : $V2 , 17 : $V3 , 18 : $V4 , 19 : $V5 , 20 : $V6 , 21 : $V7 , 22 : $V8 , 23 : $V9 , 24 : $Va , 25 : $Vb , 26 : $Vc , 38 : 79 , 39 : [ 1 , 80 ] } , o ( $Vk , [ 2 , 28 ] ) , o ( $Vk , [ 2 , 29 ] ) , o ( $Vk , [ 2 , 30 ] ) , { 8 : [ 1 , 82 ] } , { 7 : 30 , 8 : $Ve , 9 : 83 , 12 : $Vf , 14 : 10 , 15 : 11 , 16 : $V2 , 17 : $V3 , 18 : $V4 , 19 : $V5 , 20 : $V6 , 21 : $V7 , 22 : $V8 , 23 : $V9 , 24 : $Va , 25 : $Vb , 26 : $Vc , 27 : 26 , 29 : 27 , 30 : 28 , 31 : 29 , 33 : 31 , 35 : $Vg , 36 : $Vh , 42 : 32 , 47 : $Vi } , { 10 : [ 1 , 84 ] } , { 7 : 30 , 8 : $Ve , 9 : 85 , 12 : $Vf , 14 : 10 , 15 : 11 , 16 : $V2 , 17 : $V3 , 18 : $V4 , 19 : $V5 , 20 : $V6 , 21 : $V7 , 22 : $V8 , 23 : $V9 , 24 : $Va , 25 : $Vb , 26 : $Vc , 27 : 26 , 29 : 27 , 30 : 28 , 31 : 29 , 33 : 31 , 35 : $Vg , 36 : $Vh , 42 : 32 , 47 : $Vi } , { 5 : [ 2 , 2 ] } , { 10 : [ 2 , 22 ] } , o ( $Vk , [ 2 , 26 ] ) , o ( $Vl , [ 2 , 51 ] , { 45 : [ 1 , 86 ] } ) , o ( $Vl , [ 2 , 52 ] ) , o ( $Vl , [ 2 , 56 ] ) , o ( $Vl , [ 2 , 57 ] ) , o ( $Vl , [ 2 , 58 ] ) , o ( $Vl , [ 2 , 59 ] ) , o ( $Vl , [ 2 , 60 ] ) , o ( $Vl , [ 2 , 61 ] ) , o ( $Vl , [ 2 , 62 ] ) , o ( $Vl , [ 2 , 63 ] ) , o ( $Vl , [ 2 , 64 ] ) , o ( $Vk , [ 2 , 38 ] ) , o ( $VC , [ 2 , 44 ] , { 43 : 47 , 41 : 87 , 57 : $Vo , 58 : $Vp } ) , o ( $VC , [ 2 , 45 ] , { 43 : 47 , 41 : 88 , 57 : $Vo , 58 : $Vp } ) , o ( $Vl , $Vm , { 44 : 44 , 45 : $Vn } ) , o ( $Vk , [ 2 , 39 ] ) , { 39 : [ 1 , 89 ] } , o ( $Vk , [ 2 , 34 ] , { 34 : 90 , 37 : $Vq } ) , { 32 : [ 1 , 91 ] } , { 7 : 30 , 8 : $Ve , 9 : 92 , 12 : $Vf , 14 : 10 , 15 : 11 , 16 : $V2 , 17 : $V3 , 18 : $V4 , 19 : $V5 , 20 : $V6 , 21 : $V7 , 22 : $V8 , 23 : $V9 , 24 : $Va , 25 : $Vb , 26 : $Vc , 27 : 26 , 29 : 27 , 30 : 28 , 31 : 29 , 33 : 31 , 35 : $Vg , 36 : $Vh , 42 : 32 , 47 : $Vi } , { 10 : [ 1 , 93 ] } , o ( $Vl , [ 2 , 55 ] ) , { 10 : [ 1 , 94 ] } , o ( $Vl , $Vr , { 46 : 95 , 48 : $Vs , 49 : $Vt , 50 : $Vu , 51 : $Vv , 52 : $Vw , 53 : $Vx , 54 : $Vy , 55 : $Vz , 56 : $VA } ) , o ( $VC , [ 2 , 42 ] ) , o ( $VC , [ 2 , 43 ] ) , o ( $Vk , [ 2 , 33 ] , { 34 : 96 , 37 : $Vq } ) , o ( $Vk , [ 2 , 32 ] ) , { 7 : 97 , 14 : 10 , 15 : 11 , 16 : $V2 , 17 : $V3 , 18 : $V4 , 19 : $V5 , 20 : $V6 , 21 : $V7 , 22 : $V8 , 23 : $V9 , 24 : $Va , 25 : $Vb , 26 : $Vc } , { 10 : [ 1 , 98 ] } , o ( $Vl , [ 2 , 54 ] ) , { 5 : [ 2 , 3 ] } , o ( $Vl , [ 2 , 50 ] ) , o ( $Vk , [ 2 , 31 ] ) , { 28 : [ 1 , 99 ] , 39 : [ 2 , 37 ] , 40 : [ 1 , 100 ] } , o ( $Vl , [ 2 , 53 ] ) , { 7 : 81 , 14 : 10 , 15 : 11 , 16 : $V2 , 17 : $V3 , 18 : $V4 , 19 : $V5 , 20 : $V6 , 21 : $V7 , 22 : $V8 , 23 : $V9 , 24 : $Va , 25 : $Vb , 26 : $Vc , 38 : 101 } , { 7 : 81 , 14 : 10 , 15 : 11 , 16 : $V2 , 17 : $V3 , 18 : $V4 , 19 : $V5 , 20 : $V6 , 21 : $V7 , 22 : $V8 , 23 : $V9 , 24 : $Va , 25 : $Vb , 26 : $Vc , 38 : 102 } , { 39 : [ 2 , 35 ] } , { 39 : [ 2 , 36 ] } ] ,
defaultActions : { 7 : [ 2 , 1 ] , 41 : [ 2 , 4 ] , 60 : [ 2 , 2 ] , 61 : [ 2 , 22 ] , 94 : [ 2 , 3 ] , 101 : [ 2 , 35 ] , 102 : [ 2 , 36 ] } ,
parseError : function parseError ( str , hash ) {
if ( hash . recoverable ) {
this . trace ( str ) ;
} else {
2015-10-24 21:31:48 +01:00
function _parseError ( msg , hash ) {
this . message = msg ;
this . hash = hash ;
}
_parseError . prototype = new Error ( ) ;
throw new _parseError ( str , hash ) ;
2014-12-04 17:58:05 +01:00
}
} ,
parse : function parse ( input ) {
var self = this , stack = [ 0 ] , tstack = [ ] , vstack = [ null ] , lstack = [ ] , table = this . table , yytext = '' , yylineno = 0 , yyleng = 0 , recovering = 0 , TERROR = 2 , EOF = 1 ;
var args = lstack . slice . call ( arguments , 1 ) ;
var lexer = Object . create ( this . lexer ) ;
var sharedState = { yy : { } } ;
for ( var k in this . yy ) {
if ( Object . prototype . hasOwnProperty . call ( this . yy , k ) ) {
sharedState . yy [ k ] = this . yy [ k ] ;
}
}
lexer . setInput ( input , sharedState . yy ) ;
sharedState . yy . lexer = lexer ;
sharedState . yy . parser = this ;
if ( typeof lexer . yylloc == 'undefined' ) {
lexer . yylloc = { } ;
}
var yyloc = lexer . yylloc ;
lstack . push ( yyloc ) ;
var ranges = lexer . options && lexer . options . ranges ;
if ( typeof sharedState . yy . parseError === 'function' ) {
this . parseError = sharedState . yy . parseError ;
} else {
this . parseError = Object . getPrototypeOf ( this ) . parseError ;
}
function popStack ( n ) {
stack . length = stack . length - 2 * n ;
vstack . length = vstack . length - n ;
lstack . length = lstack . length - n ;
}
_token _stack :
2015-10-17 10:38:05 +02:00
var lex = function ( ) {
2014-12-04 17:58:05 +01:00
var token ;
token = lexer . lex ( ) || EOF ;
if ( typeof token !== 'number' ) {
token = self . symbols _ [ token ] || token ;
}
return token ;
2015-10-17 10:38:05 +02:00
} ;
2014-12-04 17:58:05 +01:00
var symbol , preErrorSymbol , state , action , a , r , yyval = { } , p , len , newState , expected ;
while ( true ) {
state = stack [ stack . length - 1 ] ;
if ( this . defaultActions [ state ] ) {
action = this . defaultActions [ state ] ;
} else {
if ( symbol === null || typeof symbol == 'undefined' ) {
symbol = lex ( ) ;
}
action = table [ state ] && table [ state ] [ symbol ] ;
}
if ( typeof action === 'undefined' || ! action . length || ! action [ 0 ] ) {
var errStr = '' ;
expected = [ ] ;
for ( p in table [ state ] ) {
if ( this . terminals _ [ p ] && p > TERROR ) {
expected . push ( '\'' + this . terminals _ [ p ] + '\'' ) ;
}
}
if ( lexer . showPosition ) {
errStr = 'Parse error on line ' + ( yylineno + 1 ) + ':\n' + lexer . showPosition ( ) + '\nExpecting ' + expected . join ( ', ' ) + ', got \'' + ( this . terminals _ [ symbol ] || symbol ) + '\'' ;
} else {
errStr = 'Parse error on line ' + ( yylineno + 1 ) + ': Unexpected ' + ( symbol == EOF ? 'end of input' : '\'' + ( this . terminals _ [ symbol ] || symbol ) + '\'' ) ;
}
this . parseError ( errStr , {
text : lexer . match ,
token : this . terminals _ [ symbol ] || symbol ,
line : lexer . yylineno ,
loc : yyloc ,
expected : expected
} ) ;
}
if ( action [ 0 ] instanceof Array && action . length > 1 ) {
throw new Error ( 'Parse Error: multiple actions possible at state: ' + state + ', token: ' + symbol ) ;
}
switch ( action [ 0 ] ) {
case 1 :
stack . push ( symbol ) ;
vstack . push ( lexer . yytext ) ;
lstack . push ( lexer . yylloc ) ;
stack . push ( action [ 1 ] ) ;
symbol = null ;
if ( ! preErrorSymbol ) {
yyleng = lexer . yyleng ;
yytext = lexer . yytext ;
yylineno = lexer . yylineno ;
yyloc = lexer . yylloc ;
if ( recovering > 0 ) {
recovering -- ;
}
} else {
symbol = preErrorSymbol ;
preErrorSymbol = null ;
}
break ;
case 2 :
len = this . productions _ [ action [ 1 ] ] [ 1 ] ;
yyval . $ = vstack [ vstack . length - len ] ;
yyval . _$ = {
first _line : lstack [ lstack . length - ( len || 1 ) ] . first _line ,
last _line : lstack [ lstack . length - 1 ] . last _line ,
first _column : lstack [ lstack . length - ( len || 1 ) ] . first _column ,
last _column : lstack [ lstack . length - 1 ] . last _column
} ;
if ( ranges ) {
yyval . _$ . range = [
lstack [ lstack . length - ( len || 1 ) ] . range [ 0 ] ,
lstack [ lstack . length - 1 ] . range [ 1 ]
] ;
}
r = this . performAction . apply ( yyval , [
yytext ,
yyleng ,
yylineno ,
sharedState . yy ,
action [ 1 ] ,
vstack ,
lstack
] . concat ( args ) ) ;
if ( typeof r !== 'undefined' ) {
return r ;
}
if ( len ) {
stack = stack . slice ( 0 , - 1 * len * 2 ) ;
vstack = vstack . slice ( 0 , - 1 * len ) ;
lstack = lstack . slice ( 0 , - 1 * len ) ;
}
stack . push ( this . productions _ [ action [ 1 ] ] [ 0 ] ) ;
vstack . push ( yyval . $ ) ;
lstack . push ( yyval . _$ ) ;
newState = table [ stack [ stack . length - 2 ] ] [ stack [ stack . length - 1 ] ] ;
stack . push ( newState ) ;
break ;
case 3 :
return true ;
}
}
return true ;
} } ;
/* generated by jison-lex 0.3.4 */
var lexer = ( function ( ) {
var lexer = ( {
EOF : 1 ,
parseError : function parseError ( str , hash ) {
if ( this . yy . parser ) {
this . yy . parser . parseError ( str , hash ) ;
} else {
throw new Error ( str ) ;
}
} ,
// resets the lexer, sets new input
setInput : function ( input , yy ) {
this . yy = yy || this . yy || { } ;
this . _input = input ;
this . _more = this . _backtrack = this . done = false ;
this . yylineno = this . yyleng = 0 ;
this . yytext = this . matched = this . match = '' ;
this . conditionStack = [ 'INITIAL' ] ;
this . yylloc = {
first _line : 1 ,
first _column : 0 ,
last _line : 1 ,
last _column : 0
} ;
if ( this . options . ranges ) {
this . yylloc . range = [ 0 , 0 ] ;
}
this . offset = 0 ;
return this ;
} ,
// consumes and returns one char from the input
input : function ( ) {
var ch = this . _input [ 0 ] ;
this . yytext += ch ;
this . yyleng ++ ;
this . offset ++ ;
this . match += ch ;
this . matched += ch ;
var lines = ch . match ( /(?:\r\n?|\n).*/g ) ;
if ( lines ) {
this . yylineno ++ ;
this . yylloc . last _line ++ ;
} else {
this . yylloc . last _column ++ ;
}
if ( this . options . ranges ) {
this . yylloc . range [ 1 ] ++ ;
}
this . _input = this . _input . slice ( 1 ) ;
return ch ;
} ,
// unshifts one char (or a string) into the input
unput : function ( ch ) {
var len = ch . length ;
var lines = ch . split ( /(?:\r\n?|\n)/g ) ;
this . _input = ch + this . _input ;
this . yytext = this . yytext . substr ( 0 , this . yytext . length - len ) ;
//this.yyleng -= len;
this . offset -= len ;
var oldLines = this . match . split ( /(?:\r\n?|\n)/g ) ;
this . match = this . match . substr ( 0 , this . match . length - 1 ) ;
this . matched = this . matched . substr ( 0 , this . matched . length - 1 ) ;
if ( lines . length - 1 ) {
this . yylineno -= lines . length - 1 ;
}
var r = this . yylloc . range ;
this . yylloc = {
first _line : this . yylloc . first _line ,
last _line : this . yylineno + 1 ,
first _column : this . yylloc . first _column ,
last _column : lines ?
( lines . length === oldLines . length ? this . yylloc . first _column : 0 )
+ oldLines [ oldLines . length - lines . length ] . length - lines [ 0 ] . length :
this . yylloc . first _column - len
} ;
if ( this . options . ranges ) {
this . yylloc . range = [ r [ 0 ] , r [ 0 ] + this . yyleng - len ] ;
}
this . yyleng = this . yytext . length ;
return this ;
} ,
// When called from action, caches matched text and appends it on next action
more : function ( ) {
this . _more = true ;
return this ;
} ,
// 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.
reject : function ( ) {
if ( this . options . backtrack _lexer ) {
this . _backtrack = true ;
} else {
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 ( ) , {
text : "" ,
token : null ,
line : this . yylineno
} ) ;
}
return this ;
} ,
// retain first n characters of the match
less : function ( n ) {
this . unput ( this . match . slice ( n ) ) ;
} ,
// displays already matched input, i.e. for error messages
pastInput : function ( ) {
var past = this . matched . substr ( 0 , this . matched . length - this . match . length ) ;
return ( past . length > 20 ? '...' : '' ) + past . substr ( - 20 ) . replace ( /\n/g , "" ) ;
} ,
// displays upcoming input, i.e. for error messages
upcomingInput : function ( ) {
var next = this . match ;
if ( next . length < 20 ) {
next += this . _input . substr ( 0 , 20 - next . length ) ;
}
return ( next . substr ( 0 , 20 ) + ( next . length > 20 ? '...' : '' ) ) . replace ( /\n/g , "" ) ;
} ,
// displays the character position where the lexing error occurred, i.e. for error messages
showPosition : function ( ) {
var pre = this . pastInput ( ) ;
var c = new Array ( pre . length + 1 ) . join ( "-" ) ;
return pre + this . upcomingInput ( ) + "\n" + c + "^" ;
} ,
// test the lexed token: return FALSE when not a match, otherwise return token
test _match : function ( match , indexed _rule ) {
var token ,
lines ,
backup ;
if ( this . options . backtrack _lexer ) {
// save context
backup = {
yylineno : this . yylineno ,
yylloc : {
first _line : this . yylloc . first _line ,
last _line : this . last _line ,
first _column : this . yylloc . first _column ,
last _column : this . yylloc . last _column
} ,
yytext : this . yytext ,
match : this . match ,
matches : this . matches ,
matched : this . matched ,
yyleng : this . yyleng ,
offset : this . offset ,
_more : this . _more ,
_input : this . _input ,
yy : this . yy ,
conditionStack : this . conditionStack . slice ( 0 ) ,
done : this . done
} ;
if ( this . options . ranges ) {
backup . yylloc . range = this . yylloc . range . slice ( 0 ) ;
}
}
lines = match [ 0 ] . match ( /(?:\r\n?|\n).*/g ) ;
if ( lines ) {
this . yylineno += lines . length ;
}
this . yylloc = {
first _line : this . yylloc . last _line ,
last _line : this . yylineno + 1 ,
first _column : this . yylloc . last _column ,
last _column : lines ?
lines [ lines . length - 1 ] . length - lines [ lines . length - 1 ] . match ( /\r?\n?/ ) [ 0 ] . length :
this . yylloc . last _column + match [ 0 ] . length
} ;
this . yytext += match [ 0 ] ;
this . match += match [ 0 ] ;
this . matches = match ;
this . yyleng = this . yytext . length ;
if ( this . options . ranges ) {
this . yylloc . range = [ this . offset , this . offset += this . yyleng ] ;
}
this . _more = false ;
this . _backtrack = false ;
this . _input = this . _input . slice ( match [ 0 ] . length ) ;
this . matched += match [ 0 ] ;
token = this . performAction . call ( this , this . yy , this , indexed _rule , this . conditionStack [ this . conditionStack . length - 1 ] ) ;
if ( this . done && this . _input ) {
this . done = false ;
}
if ( token ) {
return token ;
} else if ( this . _backtrack ) {
// recover context
for ( var k in backup ) {
this [ k ] = backup [ k ] ;
}
return false ; // rule action called reject() implying the next rule should be tested instead.
}
return false ;
} ,
// return next match in input
next : function ( ) {
if ( this . done ) {
return this . EOF ;
}
if ( ! this . _input ) {
this . done = true ;
}
var token ,
match ,
tempMatch ,
index ;
if ( ! this . _more ) {
this . yytext = '' ;
this . match = '' ;
}
var rules = this . _currentRules ( ) ;
for ( var i = 0 ; i < rules . length ; i ++ ) {
tempMatch = this . _input . match ( this . rules [ rules [ i ] ] ) ;
if ( tempMatch && ( ! match || tempMatch [ 0 ] . length > match [ 0 ] . length ) ) {
match = tempMatch ;
index = i ;
if ( this . options . backtrack _lexer ) {
token = this . test _match ( tempMatch , rules [ i ] ) ;
if ( token !== false ) {
return token ;
} else if ( this . _backtrack ) {
match = false ;
continue ; // rule action called reject() implying a rule MISmatch.
} else {
// else: this is a lexer rule which consumes input without producing a token (e.g. whitespace)
return false ;
}
} else if ( ! this . options . flex ) {
break ;
}
}
}
if ( match ) {
token = this . test _match ( match , rules [ index ] ) ;
if ( token !== false ) {
return token ;
}
// else: this is a lexer rule which consumes input without producing a token (e.g. whitespace)
return false ;
}
if ( this . _input === "" ) {
return this . EOF ;
} else {
return this . parseError ( 'Lexical error on line ' + ( this . yylineno + 1 ) + '. Unrecognized text.\n' + this . showPosition ( ) , {
text : "" ,
token : null ,
line : this . yylineno
} ) ;
}
} ,
// return next match that has a token
lex : function lex ( ) {
var r = this . next ( ) ;
if ( r ) {
return r ;
} else {
return this . lex ( ) ;
}
} ,
// activates a new lexer condition state (pushes the new lexer condition state onto the condition stack)
begin : function begin ( condition ) {
this . conditionStack . push ( condition ) ;
} ,
// pop the previously active lexer condition state off the condition stack
popState : function popState ( ) {
var n = this . conditionStack . length - 1 ;
if ( n > 0 ) {
return this . conditionStack . pop ( ) ;
} else {
return this . conditionStack [ 0 ] ;
}
} ,
// produce the lexer rule set which is active for the currently active lexer condition state
_currentRules : function _currentRules ( ) {
if ( this . conditionStack . length && this . conditionStack [ this . conditionStack . length - 1 ] ) {
return this . conditions [ this . conditionStack [ this . conditionStack . length - 1 ] ] . rules ;
} else {
return this . conditions [ "INITIAL" ] . rules ;
}
} ,
// return the currently active lexer condition state; when an index argument is provided it produces the N-th previous condition state, if available
topState : function topState ( n ) {
n = this . conditionStack . length - 1 - Math . abs ( n || 0 ) ;
if ( n >= 0 ) {
return this . conditionStack [ n ] ;
} else {
return "INITIAL" ;
}
} ,
// alias for begin(condition)
pushState : function pushState ( condition ) {
this . begin ( condition ) ;
} ,
// return the number of states currently on the stack
stateStackSize : function stateStackSize ( ) {
return this . conditionStack . length ;
} ,
options : { } ,
performAction : function anonymous ( yy , yy _ , $avoiding _name _collisions , YY _START ) {
var YYSTATE = YY _START ;
switch ( $avoiding _name _collisions ) {
case 0 : return 'STYLE' ;
break ;
case 1 : return 'LINKSTYLE' ;
break ;
case 2 : return 'CLASSDEF' ;
break ;
case 3 : return 'CLASS' ;
break ;
case 4 : return 'CLICK' ;
break ;
case 5 : return 12 ;
break ;
case 6 : return 13 ;
break ;
case 7 : return 47 ;
break ;
case 8 : return 35 ;
break ;
case 9 : return 36 ;
break ;
case 10 : return 'DIR' ;
break ;
case 11 : return 'DIR' ;
break ;
case 12 : return 'DIR' ;
break ;
case 13 : return 'DIR' ;
break ;
case 14 : return 'DIR' ;
break ;
case 15 : return 'DIR' ;
break ;
case 16 : return 17 ;
break ;
case 17 : return 23 ;
break ;
case 18 : return 18 ;
break ;
case 19 : return 28 ;
break ;
case 20 : return 40 ;
break ;
case 21 : return 32 ;
break ;
case 22 : return 21 ;
break ;
case 23 : return 22 ;
break ;
case 24 : return 'ARROW_CROSS' ;
break ;
case 25 : return 57 ;
break ;
case 26 : return 'ARROW_CIRCLE' ;
break ;
case 27 : return 58 ;
break ;
case 28 : return 25 ;
break ;
case 29 : return 19 ;
break ;
case 30 : return 20 ;
break ;
case 31 : return 16 ;
break ;
case 32 : return 'PIPE' ;
break ;
case 33 : return 'PS' ;
break ;
case 34 : return 'PE' ;
break ;
case 35 : return 37 ;
break ;
case 36 : return 39 ;
break ;
case 37 : return 8
break ;
case 38 : return 10
break ;
case 39 : return 'QUOTE' ;
break ;
case 40 : return 24 ;
break ;
case 41 : return 'NEWLINE' ;
break ;
case 42 : return 5 ;
break ;
}
} ,
rules : [ /^(?:style\b)/ , /^(?:linkStyle\b)/ , /^(?:classDef\b)/ , /^(?:class\b)/ , /^(?:click\b)/ , /^(?:graph\b)/ , /^(?:digraph\b)/ , /^(?:subgraph\b)/ , /^(?:node\b)/ , /^(?:edge\b)/ , /^(?:LR\b)/ , /^(?:RL\b)/ , /^(?:TB\b)/ , /^(?:BT\b)/ , /^(?:TD\b)/ , /^(?:BR\b)/ , /^(?:[0-9])/ , /^(?:#)/ , /^(?::)/ , /^(?:;)/ , /^(?:,)/ , /^(?:=)/ , /^(?:\*)/ , /^(?:\.)/ , /^(?:--[x])/ , /^(?:->)/ , /^(?:--[o])/ , /^(?:--)/ , /^(?:-)/ , /^(?:\+)/ , /^(?:=)/ , / ^ ( ? : [ \ u 0 0 2 1 - \ u 0 0 2 7 \ u 0 0 2 A - \ u 0 0 2 E \ u 0 0 3 F \ u 0 0 4 1 - \ u 0 0 5 A \ u 0 0 6 1 - \ u 0 0 7 A \ u 0 0 A A \ u 0 0 B 5 \ u 0 0 B A \ u 0 0 C 0 - \ u 0 0 D 6 \ u 0 0 D 8 - \ u 0 0 F 6 ] | [ \ u 0 0 F 8 - \ u 0 2 C 1 \ u 0 2 C 6 - \ u 0 2 D 1 \ u 0 2 E 0 - \ u 0 2 E 4 \ u 0 2 E C \ u 0 2 E E \ u 0 3 7 0 - \ u 0 3 7 4 \ u 0 3 7 6 \ u 0 3 7 7 ] | [ \ u 0 3 7 A - \ u 0 3 7 D \ u 0 3 8 6 \ u 0 3 8 8 - \ u 0 3 8 A \ u 0 3 8 C \ u 0 3 8 E - \ u 0 3 A 1 \ u 0 3 A 3 - \ u 0 3 F 5 ] | [ \ u 0 3 F 7 - \ u 0 4 8 1 \ u 0 4 8 A - \ u 0 5 2 7 \ u 0 5 3 1 - \ u 0 5 5 6 \ u 0 5 5 9 \ u 0 5 6 1 - \ u 0 5 8 7 \ u 0 5 D 0 - \ u 0 5 E A ] | [ \ u 0 5 F 0 - \ u 0 5 F 2 \ u 0 6 2 0 - \ u 0 6 4 A \ u 0 6 6 E \ u 0 6 6 F \ u 0 6 7 1 - \ u 0 6 D 3 \ u 0 6 D 5 \ u 0 6 E 5 \ u 0 6 E 6 \ u 0 6 E E ] | [ \ u 0 6 E F \ u 0 6 F A - \ u 0 6 F C \ u 0 6 F F \ u 0 7 1 0 \ u 0 7 1 2 - \ u 0 7 2 F \ u 0 7 4 D - \ u 0 7 A 5 \ u 0 7 B 1 \ u 0 7 C A - \ u 0 7 E A ] | [ \ u 0 7 F 4 \ u 0 7 F 5 \ u 0 7 F A \ u 0 8 0 0 - \ u 0 8 1 5 \ u 0 8 1 A \ u 0 8 2 4 \ u 0 8 2 8 \ u 0 8 4 0 - \ u 0 8 5 8 \ u 0 8 A 0 ] | [ \ u 0 8 A 2 - \ u 0 8 A C \ u 0 9 0 4 - \ u 0 9 3 9 \ u 0 9 3 D \ u 0 9 5 0 \ u 0 9 5 8 - \ u 0 9 6 1 \ u 0 9 7 1 - \ u 0 9 7 7 ] | [ \ u 0 9 7 9 - \ u 0 9 7 F \ u 0 9 8 5 - \ u 0 9 8 C \ u 0 9 8 F \ u 0 9 9 0 \ u 0 9 9 3 - \ u 0 9 A 8 \ u 0 9 A A - \ u 0 9 B 0 \ u 0 9 B 2 ] | [ \ u 0 9 B 6 - \ u 0 9 B 9 \ u 0 9 B D \ u 0 9 C E \ u 0 9 D C \ u 0 9 D D \ u 0 9 D F - \ u 0 9 E 1 \ u 0 9 F 0 \ u 0 9 F 1 \ u 0 A 0 5 - \ u 0 A 0 A ] | [ \ u 0 A 0 F \ u 0 A 1 0 \ u 0 A 1 3 - \ u 0 A 2 8 \ u 0 A 2 A - \ u 0 A 3 0 \ u 0 A 3 2 \ u 0 A 3 3 \ u 0 A 3 5 \ u 0 A 3 6 \ u 0 A 3 8 \ u 0 A 3 9 ] | [ \ u 0 A 5 9 - \ u 0 A 5 C \ u 0 A 5 E \ u 0 A 7 2 - \ u 0 A 7 4 \ u 0 A 8 5 - \ u 0 A 8 D \ u 0 A 8 F - \ u 0 A 9 1 \ u 0 A 9 3 - \ u 0 A A 8 ] | [ \ u 0 A A A - \ u 0 A B 0 \ u 0 A B 2 \ u 0 A B 3 \ u 0 A B 5 - \ u 0 A B 9 \ u 0 A B D \ u 0 A D 0 \ u 0 A E 0 \ u 0 A E 1 \ u 0 B 0 5 - \ u 0 B 0 C ] | [ \ u 0 B 0 F \ u 0 B 1 0 \ u 0 B 1 3 - \ u 0 B 2 8 \ u 0 B 2 A - \ u 0 B 3 0 \ u 0 B 3 2 \ u 0 B 3 3 \ u 0 B 3 5 - \ u 0 B 3 9 \ u 0 B 3 D \ u 0 B 5 C ] | [ \ u 0 B 5 D \ u 0 B 5 F - \ u 0 B 6 1 \ u 0 B 7 1 \ u 0 B 8 3 \ u 0 B 8 5 - \ u 0 B 8 A \ u 0 B 8 E - \ u 0 B 9 0 \ u 0 B 9 2 - \ u 0 B 9 5 \ u 0 B 9 9 ] | [ \ u 0 B 9 A \ u 0 B 9 C \ u 0 B 9 E \ u 0 B 9 F \ u 0 B A 3 \ u 0 B A 4 \ u 0 B A 8 - \ u 0 B A A \ u 0 B A E - \ u 0 B B 9 \ u 0 B D 0 ] | [ \ u 0 C 0 5 - \ u 0 C 0 C \ u 0 C 0 E - \ u 0 C 1 0 \ u 0 C 1 2 - \ u 0 C 2 8 \ u 0 C 2 A - \ u 0 C 3 3 \ u 0 C 3 5 - \ u 0 C 3 9 \ u 0 C 3 D ] | [ \ u 0 C 5 8 \ u 0 C 5 9 \ u 0 C 6 0 \ u 0 C 6 1 \ u 0 C 8 5 - \ u 0 C 8 C \ u 0 C 8 E - \ u 0 C 9 0 \ u 0 C 9 2 - \ u 0 C A 8 \ u 0 C A A - \ u 0 C B 3 ] | [ \ u 0 C B 5 - \ u 0 C B 9 \ u 0 C B D \ u 0 C D E \ u 0 C E 0 \ u 0 C E 1 \ u 0 C F 1 \ u 0 C F 2 \ u 0 D 0 5 - \ u 0 D 0 C \ u 0 D 0 E - \ u 0 D 1 0 ] | [ \ u 0 D 1 2 - \ u 0 D 3 A \ u 0 D 3 D \ u 0 D 4 E \ u 0 D 6 0 \ u 0 D 6 1 \ u 0 D 7 A - \ u 0 D 7 F \ u 0 D 8 5 - \ u 0 D 9 6 \ u 0 D 9 A - \ u 0 D B 1 ] | [ \ u 0 D B 3 - \ u 0 D B B \ u 0 D B D \ u 0 D C 0 - \ u 0 D C 6 \ u 0 E 0 1 - \ u 0 E 3 0 \ u 0 E 3 2 \ u 0 E 3 3 \ u 0 E 4 0 - \ u 0 E 4 6 \ u 0 E 8 1 ] | [ \ u 0 E 8 2 \ u 0 E 8 4 \ u 0 E 8 7 \ u 0 E 8 8 \ u 0 E 8 A \ u 0 E 8 D \ u 0 E 9 4 - \ u 0 E 9 7 \ u 0 E 9 9 - \ u 0 E 9 F \ u 0 E A 1 - \ u 0 E A 3 ] | [ \ u 0 E A 5 \ u 0 E A 7 \ u 0 E A A \ u 0 E A B \ u 0 E A D - \ u 0 E B 0 \ u 0 E B 2 \ u 0 E B 3 \ u 0 E B D \ u 0 E C 0 - \ u 0 E C 4 \ u 0 E C 6 ] | [ \ u 0 E D C - \ u 0 E D F \ u 0 F 0 0 \ u 0 F 4 0 - \ u 0 F 4 7 \ u 0 F 4 9 - \ u 0 F 6 C \ u 0 F 8 8 - \ u 0 F 8 C \ u 1 0 0 0 - \ u 1 0 2 A ] | [ \ u 1 0 3 F \ u 1 0 5 0 - \ u 1 0 5 5 \ u 1 0 5 A - \ u 1 0 5 D \ u 1 0 6 1 \ u 1 0 6 5 \ u 1 0 6 6 \ u 1 0 6 E - \ u 1 0 7 0 \ u 1 0 7 5 - \ u 1 0 8 1 ] | [ \ u 1 0 8 E \ u 1 0 A 0 - \ u 1 0 C 5 \ u 1 0 C 7 \ u 1 0 C D \ u 1 0 D 0 - \ u 1 0 F A \ u 1 0 F C - \ u 1 2 4 8 \ u 1 2 4 A - \ u 1 2 4 D ] | [ \ u 1 2 5 0 - \ u 1 2 5 6 \ u 1 2 5 8 \ u 1 2 5 A - \ u 1 2 5 D \ u 1 2 6 0 - \ u 1 2 8 8 \ u 1 2 8 A - \ u 1 2 8 D \ u 1 2 9 0 - \ u 1 2 B 0 ] | [ \ u 1 2 B 2 - \ u 1 2 B 5 \ u 1 2 B 8 - \ u 1 2 B E \ u 1 2 C 0 \ u 1 2 C 2 - \ u 1 2 C 5 \ u 1 2 C 8 - \ u 1 2 D 6 \ u 1 2 D 8 - \ u 1 3 1 0 ] | [ \ u 1 3 1 2 - \ u 1 3 1 5 \ u 1 3 1 8 - \ u 1 3 5 A \ u 1 3 8 0 - \ u 1 3 8 F \ u 1 3 A 0 - \ u 1 3 F 4 \ u 1 4 0 1 - \ u 1 6 6 C ] | [ \ u 1 6 6 F - \ u 1 6 7 F \ u 1 6 8 1 - \ u 1 6 9 A \ u 1 6 A 0 - \ u 1 6 E A \ u 1 7 0 0 - \ u 1 7 0 C \ u 1 7 0 E - \ u 1 7 1 1 ] | [ \ u 1 7 2 0 - \ u 1 7 3 1 \ u 1 7 4 0 - \ u 1 7 5 1 \ u 1 7 6 0 - \ u 1 7 6 C \ u 1 7 6 E - \ u 1 7 7 0 \ u 1 7 8 0 - \ u 1 7 B 3 \ u 1 7 D 7 ] | [ \ u 1 7 D C \ u 1 8 2 0 - \ u 1 8 7 7 \ u 1 8 8 0 - \ u 1 8 A 8 \ u 1 8 A A \ u 1 8 B 0 - \ u 1 8 F 5 \ u 1 9 0 0 - \ u 1 9 1 C ] | [ \ u 1 9 5 0 - \ u 1 9 6 D \ u 1 9 7 0 - \ u 1 9 7 4 \ u 1 9 8 0 - \ u 1 9 A B \ u 1 9 C 1 - \ u 1 9 C 7 \ u 1 A 0 0 - \ u 1 A 1 6 ] | [ \ u 1 A 2 0 - \ u 1 A 5 4 \ u 1 A A 7 \ u 1 B 0 5 - \ u 1 B 3 3 \ u 1 B 4 5 - \ u 1 B 4 B \ u 1 B 8 3 - \ u 1 B A 0 \ u 1 B A E \ u 1 B A F ] | [ \ u 1 B B A - \ u 1 B E 5 \ u 1 C 0 0 - \ u 1 C 2 3 \ u 1 C 4 D - \ u 1 C 4 F \ u 1 C 5 A - \ u 1 C 7 D \ u 1 C E 9 - \ u 1 C E C ] | [ \ u 1 C E E - \ u 1 C F 1 \ u 1 C F 5 \ u 1 C F 6 \ u 1 D 0 0 - \ u 1 D B F \ u 1 E 0 0 - \ u 1 F 1 5 \ u 1 F 1 8 - \ u 1 F 1 D ] | [ \ u 1 F 2 0 - \ u 1 F 4 5 \ u 1 F 4 8 - \ u 1 F 4 D \ u 1 F 5 0 - \ u 1 F 5 7 \ u 1 F 5 9 \ u 1 F 5 B \ u 1 F 5 D \ u 1 F 5 F - \ u 1 F 7 D ] | [ \ u 1 F 8 0 - \ u 1 F B 4 \ u 1 F B 6 - \ u 1 F B C \ u 1 F B E \ u 1 F C 2 - \ u 1 F C 4 \ u 1 F C 6 - \ u 1 F C C \ u 1 F D 0 - \ u 1 F D 3 ] | [ \ u 1 F D 6 - \ u 1 F D B \ u 1 F E 0 - \ u 1 F E C \ u 1 F F 2 - \ u 1 F F 4 \ u 1 F F 6 - \ u 1 F F C \ u 2 0 7 1 \ u 2 0 7 F ] | [ \ u 2 0 9 0 - \ u 2 0 9 C \ u 2 1 0 2 \ u 2 1 0 7 \ u 2 1 0 A - \ u 2 1 1 3 \ u 2 1 1 5 \ u 2 1 1 9 - \ u 2 1 1 D \ u 2 1 2 4 \ u 2 1 2 6 \ u 2 1 2 8 ] | [ \ u 2 1 2 A - \ u 2 1 2 D \ u 2 1 2 F - \ u 2 1 3 9 \ u 2 1 3 C - \ u 2 1 3 F \ u 2 1 4 5 - \ u 2 1 4 9 \ u 2 1 4 E \ u 2 1 8 3 \ u 2 1 8 4 ] | [ \ u 2 C 0 0 - \ u 2 C 2 E \ u 2 C 3 0 - \ u 2 C 5 E \ u 2 C 6 0 - \ u 2 C E 4 \ u 2 C E B - \ u 2 C E E \ u 2 C F 2 \ u 2 C F 3 ] | [ \ u 2 D 0 0 - \ u 2 D 2 5 \ u 2 D 2 7 \ u 2 D 2 D \ u 2 D 3 0 - \ u 2 D 6 7 \ u 2 D 6 F \ u 2 D 8 0 - \ u 2 D 9 6 \ u 2 D A 0 - \ u 2 D A 6 ] | [ \ u 2 D A 8 - \ u 2 D A E \ u 2 D B 0 - \ u 2 D B 6 \ u 2 D B 8 - \ u 2 D B E \ u 2 D C 0 - \ u 2 D C 6 \ u 2 D C 8 - \ u 2 D C E ] | [ \ u 2 D D 0 - \ u 2 D D 6 \ u 2 D D 8 - \ u 2 D D E \ u 2 E 2 F \ u 3 0 0 5 \ u 3 0 0 6 \ u 3 0 3 1 - \ u 3 0 3 5 \ u 3 0 3 B \ u 3 0 3 C ] | [ \ u 3 0 4 1 - \ u 3 0 9 6 \ u 3 0 9 D - \ u 3 0 9 F \ u 3 0 A 1 - \ u 3 0 F A \ u 3 0 F C - \ u 3 0 F F \ u 3 1 0 5 - \ u 3 1 2 D ] | [ \ u 3 1 3 1 - \ u 3 1 8 E \ u 3 1 A 0 - \ u 3 1 B A \ u 3 1 F 0 - \ u 3 1 F F \ u 3 4 0 0 - \ u 4 D B 5 \ u 4 E 0 0 - \ u 9 F C C ] | [ \ u A 0 0 0 - \ u A 4 8 C \ u A 4 D 0 - \ u A 4 F D \ u A 5 0 0 - \ u A 6 0 C \ u A 6 1 0 - \ u A 6 1 F \ u A 6 2 A \ u A 6 2 B ] | [ \ u A 6 4 0 - \ u A 6 6 E \ u A 6 7 F - \ u A 6 9 7 \ u A 6 A 0 - \ u A 6 E 5 \ u A 7 1 7 - \ u A 7 1 F \ u A 7 2 2 - \ u A 7 8 8 ] | [ \ u A 7 8 B - \ u A 7 8 E \ u A 7 9 0 - \ u A 7 9 3 \ u A 7 A 0 - \ u A 7 A A \ u A 7 F 8 - \ u A 8 0 1 \ u A 8 0 3 - \ u A 8 0 5 ] | [ \ u A 8 0 7 - \ u A 8 0 A \
conditions : { "INITIAL" : { "rules" : [ 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13 , 14 , 15 , 16 , 17 , 18 , 19 , 20 , 21 , 22 , 23 , 24 , 25 , 26 , 27 , 28 , 29 , 30 , 31 , 32 , 33 , 34 , 35 , 36 , 37 , 38 , 39 , 40 , 41 , 42 ] , "inclusive" : true } }
} ) ;
return lexer ;
} ) ( ) ;
parser . lexer = lexer ;
function Parser ( ) {
this . yy = { } ;
}
Parser . prototype = parser ; parser . Parser = Parser ;
return new Parser ;
} ) ( ) ;
if ( typeof require !== 'undefined' && typeof exports !== 'undefined' ) {
2015-10-24 21:31:48 +01:00
exports . parser = dot ;
exports . Parser = dot . Parser ;
exports . parse = function ( ) { return dot . parse . apply ( dot , arguments ) ; } ;
2014-12-04 17:58:05 +01:00
exports . main = function commonjsMain ( args ) {
if ( ! args [ 1 ] ) {
console . log ( 'Usage: ' + args [ 0 ] + ' FILE' ) ;
process . exit ( 1 ) ;
}
var source = require ( 'fs' ) . readFileSync ( require ( 'path' ) . normalize ( args [ 1 ] ) , "utf8" ) ;
return exports . parser . parse ( source ) ;
} ;
if ( typeof module !== 'undefined' && require . main === module ) {
exports . main ( process . argv . slice ( 1 ) ) ;
}
}