package provide DS9 1.0 ###### # Begin autogenerated taccle (version 1.3) routines. # Although taccle itself is protected by the GNU Public License (GPL) # all user-supplied functions are protected by their respective # author's license. See http://mini.net/tcl/taccle for other details. ###### namespace eval bin { variable yylval {} variable table variable rules variable token {} variable yycnt 0 variable yyerr 0 variable save_state 0 namespace export yylex } proc bin::YYABORT {} { return -code return 1 } proc bin::YYACCEPT {} { return -code return 0 } proc bin::YYERROR {} { variable yyerr set yyerr 1 } proc bin::yyclearin {} { variable token variable yycnt set token {} incr yycnt -1 } proc bin::yyerror {s} { puts stderr $s } proc bin::setupvalues {stack pointer numsyms} { upvar 1 1 y set y {} for {set i 1} {$i <= $numsyms} {incr i} { upvar 1 $i y set y [lindex $stack $pointer] incr pointer } } proc bin::unsetupvalues {numsyms} { for {set i 1} {$i <= $numsyms} {incr i} { upvar 1 $i y unset y } } array set bin::table { 7:264,target 19 34:265,target 22 1:293 goto 9:284 shift 47:265 reduce 31:y,target 28 27:0 reduce 48:0 reduce 27:Y,target 30 23:265,target 18 17:265 reduce 56:z,target 29 56:265 shift 2:263,target 23 0:275,target 7 6:263 shift 9:296 goto 33:z,target 29 4:291,target 31 12:265,target 15 15:297,target 52 57:265,target 39 31:292,target 32 25:z,target 33 26:265 reduce 24:0 reduce 11:261,target 47 48:0,target 7 41:0,target 43 30:Z,target 28 29:Z,target 34 45:0 reduce 46:265,target 6 25:0,target 33 35:263 shift 3:265,target 14 17:0,target 10 35:264 shift 10:0,target 25 35:265 reduce 56:x,target 27 0:273,target 5 35:265,target 38 33:x,target 27 25:x,target 33 17:289 goto 31:X shift 11:258,target 44 44:265 reduce 31:Y shift 42:0 reduce 31:Z shift 30:X,target 28 29:X,target 34 24:265,target 31 56:291 goto 56:292 goto 5:Y,target 25 14:265 reduce 5:291,target 33 13:265,target 13 53:265 shift 27:y,target 30 0:271,target 3 5:X shift 35:263,target 18 5:Y shift 5:Z shift 3:265 reduce 17:0 reduce 18:264,target 8 35:287 goto 32:Y,target 29 27:X reduce 27:Y reduce 24:Y,target 31 23:265 reduce 47:265,target 4 38:0 reduce 27:Z reduce 4:265,target 30 59:0 reduce 0:290,target 17 3:0,target 14 30:z,target 28 29:z,target 34 36:265,target 21 32:265 reduce 0:268,target 2 45:0,target 3 37:0,target 41 26:Z,target 35 14:0 reduce 30:0,target 28 29:0,target 34 24:X reduce 25:265,target 33 24:Y reduce 22:0,target 17 35:0 reduce 24:Z reduce 11:257 shift 14:0,target 26 11:258 shift 41:265 reduce 11:259 shift 11:260 shift 11:261 shift 31:x shift 11:262 shift 31:y shift 14:265,target 26 59:265,target 20 33:292,target 32 31:z shift 30:x,target 28 29:x,target 34 11:265 reduce 0:266,target 1 5:y,target 28 19:264,target 9 50:265 reduce 49:265 reduce 11:0 reduce 26:X,target 35 48:265,target 7 32:0 reduce 5:265,target 30 5:x shift 19:263 reduce 0:266 shift 5:y shift 19:264 reduce 5:z shift 19:265 reduce 20:265 reduce 21:287,target 54 0:268 shift 32:y,target 29 27:x reduce 37:265,target 41 27:y reduce 24:y,target 31 0:285,target 15 0:271 shift 56:292,target 32 27:z reduce 0:272 shift 0:273 shift 0:274 shift 8:265 shift 28:Y,target 32 0:275 shift 28:265 reduce 0:276 shift 26:265,target 35 0:278 shift 4:Z,target 26 8:270 shift 28:0 reduce 0:279 shift 0:280 shift 11:286 goto 0:281 shift 8:295,target 39 0:282 shift 50:0 reduce 49:0 reduce 26:z,target 35 1:287,target 21 0:283 shift 24:x reduce 57:0,target 39 37:265 reduce 24:y reduce 0:285 shift 50:0,target 45 49:0,target 16 24:z reduce 0:283,target 14 42:0,target 24 31:Z,target 26 34:0,target 22 0:288 goto 21:264,target 19 26:0,target 35 3:0 reduce 0:290 goto 18:0,target 8 50:265,target 45 49:265,target 16 11:0,target 1 46:265 reduce 25:0 reduce 4:X,target 24 46:0 reduce 56:X shift 38:265,target 40 26:x,target 35 56:Y shift 15:263,target 18 56:Z shift 0:281,target 12 55:265 reduce 31:X,target 24 1:264,target 19 8:295 goto 27:265,target 30 5:265 shift 25:265 reduce 6:263,target 34 22:0 reduce 32:X reduce 32:Y reduce 28:y,target 32 56:Y,target 25 43:0 reduce 32:Z reduce 4:z,target 29 33:Y,target 25 25:Y,target 33 34:265 reduce 0:278,target 9 8:270,target 38 51:265,target 44 31:z,target 29 18:0 reduce 28:X reduce 28:Y reduce 54:0,target 36 43:265 reduce 40:265,target 42 40:0 reduce 39:265,target 23 39:0 reduce 28:Z reduce 46:0,target 6 38:0,target 40 27:Z,target 30 4:x,target 27 23:0,target 18 5:291 goto 13:265 reduce 28:265,target 32 0:276,target 8 5:292 goto 56:x shift 56:y shift 52:265 reduce 4:292,target 32 56:z shift 2:263 shift 7:263,target 18 31:x,target 27 25:X reduce 11:262,target 48 25:Y reduce 17:265,target 11 36:0 reduce 25:Z reduce 15:277,target 50 22:265 reduce 57:0 reduce 35:287,target 57 27:X,target 30 32:x reduce 32:y reduce 56:y,target 28 52:265,target 27 32:z reduce 0:274,target 6 8:265,target 37 31:265 shift 33:y,target 28 31:291,target 55 25:y,target 33 12:0 reduce 41:265,target 43 11:259,target 45 11:260,target 46 30:Y,target 28 29:Y,target 34 54:0 reduce 40:265 reduce 39:265 reduce 28:x reduce 5:Z,target 26 30:265,target 28 29:265,target 34 28:y reduce 9:267,target 40 28:z reduce 5:292,target 32 27:z,target 30 0:272,target 4 10:265 reduce 35:264,target 19 58:0,target 12 15:294,target 51 51:0,target 44 48:265 reduce 18:265,target 8 43:0,target 2 32:Z,target 29 35:0,target 38 30:0 reduce 29:0 reduce 24:Z,target 31 11:257,target 43 27:0,target 30 18:263 reduce 18:264 reduce 19:0,target 9 20:0,target 37 51:0 reduce 12:0,target 15 18:265 reduce 25:x reduce 53:265,target 58 31:291 goto 25:y reduce 5:X,target 24 57:265 reduce 31:292 goto 25:z reduce 7:263 shift 7:264 shift 27:x,target 30 42:265,target 24 27:265 reduce 18:263,target 8 32:X,target 29 26:0 reduce 24:X,target 31 1:293,target 22 9:284,target 41 47:0 reduce 31:265,target 30 0:288,target 16 36:265 reduce 30:y,target 28 29:y,target 34 5:z,target 29 19:265,target 9 20:265,target 37 26:Y,target 35 23:0 reduce 45:265 reduce 33:X shift 33:Y shift 44:0 reduce 33:Z shift 7:287 goto 54:265,target 36 7:294,target 36 15:263 shift 32:z,target 29 15:264 shift 24:z,target 31 55:0,target 19 33:291,target 56 1:269,target 20 54:265 reduce 47:0,target 4 7:294 goto 43:265,target 2 40:0,target 42 39:0,target 23 28:Z,target 32 32:0,target 29 5:x,target 27 19:263,target 9 24:0,target 31 4:265 shift 15:287,target 35 16:0,target 0 19:0 reduce 20:0 reduce 30:X reduce 29:X reduce 24:265 reduce 30:Y reduce 29:Y reduce 41:0 reduce 32:265,target 29 30:Z reduce 29:Z reduce 15:277 shift 32:x,target 29 24:x,target 31 56:291,target 59 33:265 shift 4:X shift 28:X,target 32 4:Y shift 4:Z shift 15:287 goto 16:0 accept 26:X reduce 4:Y,target 25 26:Y reduce 10:265,target 25 55:265,target 19 37:0 reduce 26:Z reduce 42:265 reduce 26:y,target 35 58:0 reduce 15:294 goto 15:264,target 19 33:x shift 33:y shift 0:282,target 13 44:265,target 5 33:z shift 31:Y,target 25 4:291 goto 12:265 reduce 15:297 goto 4:292 goto 21:263,target 18 51:265 reduce 1:263 shift 13:0 reduce 1:264 shift 9:296,target 42 33:265,target 30 21:263 shift 34:0 reduce 28:z,target 32 21:264 shift 56:Z,target 26 59:0,target 20 55:0 reduce 52:0,target 27 33:291 goto 1:269 shift 59:265 reduce 44:0,target 5 33:Z,target 26 33:292 goto 30:x reduce 29:x reduce 7:287,target 35 36:0,target 21 30:y reduce 29:y reduce 25:Z,target 33 22:265,target 17 30:z reduce 29:z reduce 28:0,target 32 0:279,target 10 0:280,target 11 11:286,target 49 17:289,target 53 1:263,target 18 13:0,target 13 30:265 reduce 29:265 reduce 9:267 shift 10:0 reduce 11:265,target 1 56:265,target 30 4:x shift 28:x,target 32 4:y shift 56:X,target 24 4:z shift 52:0 reduce 38:265 reduce 26:x reduce 4:y,target 28 45:265,target 3 33:X,target 24 26:y reduce 26:z reduce 25:X,target 33 1:287 goto 21:287 goto } array set bin::rules { 9,l 287 11,l 289 32,l 292 6,l 286 28,l 291 3,l 286 25,l 290 0,l 298 22,l 290 43,l 296 18,l 290 40,l 295 39,l 294 15,l 290 36,l 293 12,l 288 33,l 292 7,l 286 29,l 291 30,l 292 4,l 286 26,l 290 1,l 286 23,l 290 44,l 297 19,l 290 20,l 290 41,l 295 16,l 290 37,l 293 13,l 290 34,l 292 8,l 287 10,l 288 31,l 292 5,l 286 27,l 290 2,l 286 24,l 290 45,l 297 21,l 290 42,l 296 17,l 290 38,l 294 14,l 290 35,l 292 } array set bin::rules { 12,dc 3 26,dc 1 3,dc 1 41,dc 1 18,dc 2 33,dc 1 9,dc 1 11,dc 0 25,dc 1 2,dc 1 40,dc 1 39,dc 2 17,dc 2 32,dc 1 8,dc 1 10,dc 1 24,dc 2 1,dc 0 38,dc 1 16,dc 2 31,dc 1 7,dc 1 45,dc 1 23,dc 2 0,dc 1 37,dc 1 15,dc 1 29,dc 1 30,dc 1 6,dc 1 44,dc 1 22,dc 2 36,dc 2 14,dc 1 28,dc 1 5,dc 1 43,dc 1 21,dc 2 35,dc 1 13,dc 1 27,dc 2 4,dc 1 42,dc 1 19,dc 3 20,dc 4 34,dc 1 } array set bin::rules { 41,line 110 7,line 62 37,line 102 4,line 59 34,line 97 1,line 56 31,line 94 27,line 86 24,line 83 21,line 80 17,line 76 14,line 73 11,line 68 43,line 114 9,line 65 40,line 109 39,line 106 6,line 61 36,line 101 3,line 58 33,line 96 29,line 90 30,line 93 26,line 85 23,line 82 19,line 78 20,line 79 16,line 75 13,line 72 10,line 68 45,line 118 42,line 113 8,line 64 38,line 105 5,line 60 35,line 98 2,line 57 32,line 95 28,line 89 25,line 84 22,line 81 18,line 77 15,line 74 12,line 69 11,e 1 44,line 117 } array set bin::lr1_table { 66,trans {} 35 {{8 {0 263 264 265} 1}} 14,trans {} 36 {{9 {0 263 264 265} 1}} 33,trans {{X 24} {Y 25} {Z 26} {x 27} {y 28} {z 29} {265 30} {291 68} {292 32}} 37 {{38 {0 265} 1} {39 {0 265} 1} {8 {0 265} 0} {9 {0 265} 0}} 52,trans {} 38 {{21 {0 265} 2}} 71,trans {} 40 {{40 {0 265} 1}} 39 {{41 {0 265} 1}} 18,trans {} 41 {{23 {0 265} 2}} 1,trans {{263 18} {264 19} {269 20} {287 21} {293 22}} 37,trans {{263 56} {264 57} {287 69}} 42 {{42 {0 265} 1}} 56,trans {} 43 {{43 {0 265} 1}} 44 {{24 {0 265} 2}} 23,trans {} 45 {{2 {0 265} 1}} 5,trans {{X 24} {Y 25} {Z 26} {x 27} {y 28} {z 29} {265 30} {291 33} {292 32}} 42,trans {} 46 {{5 {0 265} 1}} 61,trans {} 47 {{3 {0 265} 1}} 48 {{6 {0 265} 1}} 27,trans {} 50 {{7 {0 265} 1}} 49 {{4 {0 265} 1}} 9,trans {{267 42} {284 43} {296 44}} 46,trans {} 51 {{16 {0 265} 2}} 65,trans {} 52 {{45 {0 265} 1}} 53 {{44 {0 265} 1}} 13,trans {} 32,trans {} 54 {{27 {0 265} 2}} 51,trans {} 55 {{12 0 2}} 70,trans {} 69,trans {} 56 {{8 {0 265} 1}} 57 {{9 {0 265} 1}} 17,trans {{289 55}} 0,trans {{266 1} {268 2} {271 3} {272 4} {273 5} {274 6} {275 7} {276 8} {278 9} {279 10} {280 11} {281 12} {282 13} {283 14} {285 15} {288 16} {290 17}} 36,trans {} 58 {{36 {0 265} 2}} 55,trans {{265 70}} 60 {{33 {0 265} 1}} 59 {{31 {0 265} 1}} 61 {{35 {0 265} 1}} 62 {{30 {0 265} 1}} 22,trans {} 4,trans {{X 24} {Y 25} {Z 26} {x 27} {y 28} {z 29} {265 30} {291 31} {292 32}} 41,trans {} 63 {{32 {0 265} 1}} 60,trans {} 59,trans {} 64 {{34 {0 265} 1}} 65 {{28 {0 265} 1}} 66 {{19 {0 265} 3}} 26,trans {} 8,trans {{265 39} {270 40} {295 41}} 45,trans {} 67 {{29 {0 265} 1}} 64,trans {} 68 {{20 {0 265} 3} {28 {0 265} 0} {29 {0 265} 0} {30 {0 265} 0} {31 {0 265} 0} {32 {0 265} 0} {33 {0 265} 0} {34 {0 265} 0} {35 {0 265} 0}} 70 {{12 0 3}} 69 {{39 {0 265} 2}} 12,trans {} 71 {{20 {0 265} 4}} 31,trans {{X 59} {Y 60} {Z 61} {x 62} {y 63} {z 64} {265 65} {291 66} {292 67}} 50,trans {} 49,trans {} 68,trans {{X 59} {Y 60} {Z 61} {x 62} {y 63} {z 64} {265 65} {291 71} {292 67}} 16,trans {} 35,trans {} 54,trans {} 21,trans {{263 56} {264 57} {287 58}} 3,trans {} 40,trans {} 39,trans {} 58,trans {} 10 {{25 {0 265} 1}} 11 {{16 {0 265} 1} {1 {0 265} 0} {2 {0 265} 0} {3 {0 265} 0} {4 {0 265} 0} {5 {0 265} 0} {6 {0 265} 0} {7 {0 265} 0}} 25,trans {} 12 {{15 {0 265} 1}} 7,trans {{263 35} {264 36} {287 37} {294 38}} 44,trans {} 13 {{13 {0 265} 1}} 63,trans {} 14 {{26 {0 265} 1}} 11,trans {{257 45} {258 46} {259 47} {260 48} {261 49} {262 50} {286 51}} 15 {{27 {0 265} 1} {44 {0 265} 0} {45 {0 265} 0} {38 {0 265} 0} {39 {0 265} 0} {8 {0 263 264 265} 0} {9 {0 263 264 265} 0}} 30,trans {} 29,trans {} 16 {{0 0 1}} 48,trans {} 0 {{0 0 0} {10 0 0} {12 0 0} {13 {0 265} 0} {14 {0 265} 0} {15 {0 265} 0} {16 {0 265} 0} {17 {0 265} 0} {18 {0 265} 0} {19 {0 265} 0} {20 {0 265} 0} {21 {0 265} 0} {22 {0 265} 0} {23 {0 265} 0} {24 {0 265} 0} {25 {0 265} 0} {26 {0 265} 0} {27 {0 265} 0}} 17 {{10 0 1} {12 0 1} {11 265 0}} 67,trans {} 1 {{17 {0 265} 1} {36 {0 265} 0} {37 {0 265} 0} {8 {263 264} 0} {9 {263 264} 0}} 18 {{8 {263 264} 1}} 15,trans {{263 35} {264 36} {277 52} {287 37} {294 53} {297 54}} 2 {{18 {0 265} 1}} 19 {{9 {263 264} 1}} 20 {{37 {0 265} 1}} 34,trans {} 3 {{14 {0 265} 1}} 21 {{36 {0 265} 1} {8 {0 265} 0} {9 {0 265} 0}} 53,trans {} 4 {{19 {0 265} 1} {28 {265 X Y Z x y z} 0} {29 {265 X Y Z x y z} 0} {30 {265 X Y Z x y z} 0} {31 {265 X Y Z x y z} 0} {32 {265 X Y Z x y z} 0} {33 {265 X Y Z x y z} 0} {34 {265 X Y Z x y z} 0} {35 {265 X Y Z x y z} 0}} 22 {{17 {0 265} 2}} 5 {{20 {0 265} 1} {28 {265 X Y Z x y z} 0} {29 {265 X Y Z x y z} 0} {30 {265 X Y Z x y z} 0} {31 {265 X Y Z x y z} 0} {32 {265 X Y Z x y z} 0} {33 {265 X Y Z x y z} 0} {34 {265 X Y Z x y z} 0} {35 {265 X Y Z x y z} 0}} 23 {{18 {0 265} 2}} 20,trans {} 19,trans {} 6 {{22 {0 265} 1}} 2,trans {{263 23}} 24 {{31 {265 X Y Z x y z} 1}} 38,trans {} 7 {{21 {0 265} 1} {38 {0 265} 0} {39 {0 265} 0} {8 {0 263 264 265} 0} {9 {0 263 264 265} 0}} 25 {{33 {265 X Y Z x y z} 1}} 57,trans {} 8 {{23 {0 265} 1} {40 {0 265} 0} {41 {0 265} 0}} 26 {{35 {265 X Y Z x y z} 1}} 9 {{24 {0 265} 1} {42 {0 265} 0} {43 {0 265} 0}} 27 {{30 {265 X Y Z x y z} 1}} 24,trans {} 28 {{32 {265 X Y Z x y z} 1}} 6,trans {{263 34}} 43,trans {} 29 {{34 {265 X Y Z x y z} 1}} 30 {{28 {265 X Y Z x y z} 1}} 62,trans {} 31 {{19 {0 265} 2} {28 {0 265} 0} {29 {0 265} 0} {30 {0 265} 0} {31 {0 265} 0} {32 {0 265} 0} {33 {0 265} 0} {34 {0 265} 0} {35 {0 265} 0}} 10,trans {} 32 {{29 {265 X Y Z x y z} 1}} 28,trans {} 33 {{20 {0 265} 2} {28 {265 X Y Z x y z} 0} {29 {265 X Y Z x y z} 0} {30 {265 X Y Z x y z} 0} {31 {265 X Y Z x y z} 0} {32 {265 X Y Z x y z} 0} {33 {265 X Y Z x y z} 0} {34 {265 X Y Z x y z} 0} {35 {265 X Y Z x y z} 0}} 47,trans {} 34 {{22 {0 265} 2}} } array set bin::token_id_table { 286 yesno 286,t 1 287 numeric 292,line 92 288 command 265,title string 289 @PSEUDO1 290 bin 284,title SUM 291 cols 292 colsxyz 288,line 67 293 about 294 factor 295 filter 296 function 262,t 0 297 to 298 start' 285,line 40 283,t 0 282,line 37 264,title float 283,title OUT 278,line 33 error,line 54 258,t 0 275,line 30 279,t 0 280,t 0 Z,line 97 272,line 27 263,title integer 282,title OPEN 268,line 23 276,t 0 265,line 17 Y,t 0 297,t 1 262,line 12 262,title FALSE 0 {$} 0,t 0 281,title MATCH error,t 0 258,line 8 273,t 0 294,t 1 z,line 96 261,title TRUE 279,title IN 280,title LOCK 298,title {} 269,t 0 270,t 0 291,t 1 y,t 0 297,line 116 266,t 0 260,title OFF 259,title ON 278,title FUNCTION 297,title {} 287,t 1 294,line 104 error,title {} 291,line 88 X X Y Y Z Z 263,t 0 258,title NO 287,line 63 277,title FIT 284,t 0 296,title {} 284,line 39 281,line 36 260,t 0 259,t 0 281,t 0 257,title YES 277,line 32 276,title FILTER 295,title {} 274,line 29 Y,line 95 271,line 26 277,t 0 x x y y z z Z,t 0 298,t 1 267,line 22 275,title FACTOR 294,title {} 264,line 15 261,line 11 274,t 0 295,t 1 257,line 7 274,title DEPTH 293,title {} 271,t 0 error error 292,t 1 y,line 94 273,title COLSZ z,t 0 292,title {} 267,t 0 Z,title {} 288,t 1 296,line 112 272,title COLS 291,title {} 293,line 100 264,t 0 285,t 0 289,line 68 290,line 71 Y,title {} 286,line 55 271,title CLOSE 261,t 0 283,line 38 289,title {} 290,title {} 282,t 0 279,line 34 280,line 35 X,title {} z,title {} 276,line 31 257,t 0 269,title CENTER 270,title CLEAR 273,line 28 288,title {} 278,t 0 X,line 93 269,line 24 270,line 25 y,title {} 266,line 21 268,title BUFFERSIZE 275,t 0 263,line 14 287,title {} X,t 0 296,t 1 260,line 10 259,line 9 x,title {} 272,t 0 267,title AVERAGE 257 YES_ 286,title {} 293,t 1 258 NO_ 260 OFF_ 259 ON_ 261 TRUE_ 262 FALSE_ 263 INT_ 264 REAL_ x,line 92 265 STRING_ 266 ABOUT_ 267 AVERAGE_ 268,t 0 268 BUFFERSIZE_ 269 CENTER_ 270 CLEAR_ 271 CLOSE_ 272 COLS_ 289,t 1 290,t 1 266,title ABOUT 273 COLSZ_ 274 DEPTH_ 285,title TO 275 FACTOR_ 298,line 119 276 FILTER_ 277 FIT_ x,t 0 278 FUNCTION_ 279 IN_ 280 LOCK_ 281 MATCH_ 282 OPEN_ 295,line 108 265,t 0 283 OUT_ 284 SUM_ 285 TO_ } proc bin::yyparse {} { variable yylval variable table variable rules variable token variable yycnt variable lr1_table variable token_id_table variable yyerr variable save_state set yycnt 0 set state_stack {0} set value_stack {{}} set token "" set accepted 0 set yyerr 0 set save_state 0 while {$accepted == 0} { set state [lindex $state_stack end] if {$token == ""} { set yylval "" set token [yylex] set buflval $yylval if {$token>0} { incr yycnt } } if {![info exists table($state:$token)] || $yyerr} { if {!$yyerr} { set save_state $state } # pop off states until error token accepted while {[llength $state_stack] > 0 && \ ![info exists table($state:error)]} { set state_stack [lrange $state_stack 0 end-1] set value_stack [lrange $value_stack 0 \ [expr {[llength $state_stack] - 1}]] set state [lindex $state_stack end] } if {[llength $state_stack] == 0} { set rr { } if {[info exists lr1_table($save_state,trans)] && [llength $lr1_table($save_state,trans)] >= 1} { foreach trans $lr1_table($save_state,trans) { foreach {tok_id nextstate} $trans { set ss $token_id_table($tok_id,title) if {$ss != {}} { append rr "$ss, " } } } } set rr [string trimleft $rr { }] set rr [string trimright $rr {, }] yyerror "parse error, expecting: $rr" return 1 } lappend state_stack [set state $table($state:error,target)] lappend value_stack {} # consume tokens until it finds an acceptable one while {![info exists table($state:$token)]} { if {$token == 0} { yyerror "end of file while recovering from error" return 1 } set yylval {} set token [yylex] set buflval $yylval } continue } switch -- $table($state:$token) { shift { lappend state_stack $table($state:$token,target) lappend value_stack $buflval set token "" } reduce { set rule $table($state:$token,target) set ll $rules($rule,l) if {[info exists rules($rule,e)]} { set dc $rules($rule,e) } else { set dc $rules($rule,dc) } set stackpointer [expr {[llength $state_stack]-$dc}] setupvalues $value_stack $stackpointer $dc set _ $1 set yylval [lindex $value_stack end] switch -- $rule { 1 { set _ 1 } 2 { set _ 1 } 3 { set _ 1 } 4 { set _ 1 } 5 { set _ 0 } 6 { set _ 0 } 7 { set _ 0 } 8 { set _ $1 } 9 { set _ $1 } 11 { global ds9; if {!$ds9(init)} {YYERROR} else {yyclearin; YYACCEPT} } 13 { BinDialog } 14 { BinDestroyDialog } 15 { MatchBinCurrent } 16 { ProcessCmdSet bin lock $2 LockBinCurrent } 18 { ProcessCmdSet bin buffersize $2 ChangeBinBufferSize } 19 { BinCols \"$2\" \"$3\" \"\" } 20 { BinCols \"$2\" \"$3\" \"$4\" } 22 { ProcessCmdSet bin depth $2 ChangeBinDepth } 23 { BinFilter $2 } 24 { ProcessCmdSet bin function $2 ChangeBinFunction } 25 { Bin .5 .5 } 26 { Bin 2 2 } 28 { set _ $1 } 29 { set _ $1 } 30 { set _ $1 } 31 { set _ $1 } 32 { set _ $1 } 33 { set _ $1 } 34 { set _ $1 } 35 { set _ $1 } 36 { BinAbout $1 $2 } 37 { BinAboutCenter } 38 { ProcessCmdSet bin factor "$1 $1" ChangeBinFactor } 39 { ProcessCmdSet bin factor "$1 $2" ChangeBinFactor } 40 { set _ {} } 41 { set _ $1 } 42 { set _ average } 43 { set _ sum } 45 { BinToFit } } unsetupvalues $dc # pop off tokens from the stack if normal rule if {![info exists rules($rule,e)]} { incr stackpointer -1 set state_stack [lrange $state_stack 0 $stackpointer] set value_stack [lrange $value_stack 0 $stackpointer] } # now do the goto transition lappend state_stack $table([lindex $state_stack end]:$ll,target) lappend value_stack $_ } accept { set accepted 1 } goto - default { puts stderr "Internal parser error: illegal command $table($state:$token)" return 2 } } } return 0 } ###### # end autogenerated taccle functions ###### proc bin::yyerror {msg} { variable yycnt variable yy_current_buffer variable index_ ParserError $msg $yycnt $yy_current_buffer $index_ }