diff options
author | William Joye <wjoye@cfa.harvard.edu> | 2019-01-19 19:38:05 (GMT) |
---|---|---|
committer | William Joye <wjoye@cfa.harvard.edu> | 2019-01-19 19:38:05 (GMT) |
commit | 4530b547880bded9b583ed9b73cbfdb34fb5209a (patch) | |
tree | 8ebc8f4ac79085234176a775856c6484f4317b10 /ds9/parsers/fitssendparser.tcl | |
parent | 5dcb7f4de642a0c2580066fd1e1b7efd58b9f6b7 (diff) | |
download | blt-4530b547880bded9b583ed9b73cbfdb34fb5209a.zip blt-4530b547880bded9b583ed9b73cbfdb34fb5209a.tar.gz blt-4530b547880bded9b583ed9b73cbfdb34fb5209a.tar.bz2 |
parser scripts now in repo
Diffstat (limited to 'ds9/parsers/fitssendparser.tcl')
-rw-r--r-- | ds9/parsers/fitssendparser.tcl | 1754 |
1 files changed, 1754 insertions, 0 deletions
diff --git a/ds9/parsers/fitssendparser.tcl b/ds9/parsers/fitssendparser.tcl new file mode 100644 index 0000000..4d0c30b --- /dev/null +++ b/ds9/parsers/fitssendparser.tcl @@ -0,0 +1,1754 @@ +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 fitssend { + variable yylval {} + variable table + variable rules + variable token {} + variable yycnt 0 + variable yyerr 0 + variable save_state 0 + + namespace export yylex +} + +proc fitssend::YYABORT {} { + return -code return 1 +} + +proc fitssend::YYACCEPT {} { + return -code return 0 +} + +proc fitssend::YYERROR {} { + variable yyerr + set yyerr 1 +} + +proc fitssend::yyclearin {} { + variable token + variable yycnt + set token {} + incr yycnt -1 +} + +proc fitssend::yyerror {s} { + puts stderr $s +} + +proc fitssend::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 fitssend::unsetupvalues {numsyms} { + for {set i 1} {$i <= $numsyms} {incr i} { + upvar 1 $i y + unset y + } +} + +array set fitssend::table { + 21:289 reduce + 21:290 reduce + 21:291 reduce + 21:292 reduce + 21:293 reduce + 48:0 reduce + 28:285,target 12 + 25:293,target 9 + 41:287,target 25 + 9:298 reduce + 64:0,target 51 + 23:284,target 7 + 33:0,target 17 + 19:292,target 3 + 20:292,target 4 + 35:286,target 19 + 7:260,target 20 + 7:259,target 19 + 21:0 reduce + 29:285,target 13 + 30:285,target 14 + 26:284 reduce + 26:285 reduce + 26:286 reduce + 63:0 reduce + 26:287 reduce + 26:293,target 10 + 26:288 reduce + 42:287,target 26 + 26:289 reduce + 26:290 reduce + 26:291 reduce + 26:292 reduce + 26:293 reduce + 54:290,target 50 + 54:289,target 49 + 24:284,target 8 + 21:292,target 5 + 36:286,target 20 + 7:276,target 36 + 61:0,target 56 + 29:0,target 13 + 30:0,target 14 + 31:285,target 15 + 35:0 reduce + 27:293,target 11 + 43:287,target 27 + 25:284,target 9 + 9:0 reduce + 32:284 reduce + 22:292,target 6 + 32:285 reduce + 32:286 reduce + 37:286,target 21 + 32:287 reduce + 32:288 reduce + 7:293,target 53 + 32:289 reduce + 32:290 reduce + 32:291 reduce + 32:292 reduce + 32:293 reduce + 32:285,target 16 + 13:298,target 58 + 28:293,target 12 + 50:0 reduce + 49:0 reduce + 57:0,target 43 + 26:284,target 10 + 26:0,target 10 + 23:292,target 7 + 38:286,target 22 + 17:291,target 1 + 63:291,target 51 + 33:285,target 17 + 37:284 reduce + 7:267,target 27 + 37:285 reduce + 37:286 reduce + 3:302,target 15 + 37:287 reduce + 22:0 reduce + 29:293,target 13 + 30:293,target 14 + 37:288 reduce + 37:289 reduce + 37:290 reduce + 37:291 reduce + 0:299,target 3 + 37:292 reduce + 37:293 reduce + 64:0 reduce + 27:284,target 11 + 24:292,target 8 + 39:286,target 23 + 40:286,target 24 + 54:0,target 47 + 7:284,target 44 + 18:291,target 2 + 23:0,target 7 + 34:285,target 18 + 31:293,target 15 + 36:0 reduce + 28:284,target 12 + 43:284 reduce + 43:285 reduce + 25:292,target 9 + 43:286 reduce + 41:286,target 25 + 43:287 reduce + 43:288 reduce + 43:289 reduce + 43:290 reduce + 43:291 reduce + 43:292 reduce + 43:293 reduce + 7:311,target 56 + 19:291,target 3 + 20:291,target 4 + 35:285,target 19 + 8:0,target 63 + 32:293,target 16 + 13:298 shift + 51:0,target 35 + 13:316,target 59 + 7:258,target 18 + 29:284,target 13 + 30:284,target 14 + 7:257 shift + 19:0,target 3 + 20:0,target 4 + 51:0 reduce + 13:316 goto + 7:258 shift + 7:260 shift + 7:259 shift + 0:301,target 5 + 7:261 shift + 26:292,target 10 + 7:262 shift + 42:286,target 26 + 7:263 shift + 7:264 shift + 7:265 shift + 7:266 shift + 54:288,target 48 + 7:267 shift + 7:268 shift + 7:270 shift + 7:269 shift + 7:271 shift + 7:272 shift + 21:291,target 5 + 7:273 shift + 36:285,target 20 + 7:274 shift + 7:275 shift + 7:276 shift + 18:284 reduce + 7:277 shift + 33:293,target 17 + 48:291 reduce + 7:278 shift + 7:275,target 35 + 18:285 reduce + 48:292 reduce + 7:280 shift + 7:279 shift + 18:286 reduce + 48:293 reduce + 7:281 shift + 18:287 reduce + 7:282 shift + 18:288 reduce + 7:283 shift + 18:289 reduce + 18:290 reduce + 7:284 shift + 18:291 reduce + 23:0 reduce + 31:284,target 15 + 7:285 shift + 18:292 reduce + 7:286 shift + 18:293 reduce + 7:287 shift + 5:0,target 62 + 7:288 shift + 27:292,target 11 + 7:290 shift + 7:289 shift + 43:286,target 27 + 65:0 reduce + 7:291 shift + 7:292 shift + 7:293 shift + 47:0,target 31 + 16:0,target 44 + 7:310 goto + 7:309 goto + 22:291,target 6 + 7:311 goto + 37:285,target 21 + 7:313 goto + 7:292,target 52 + 34:293,target 18 + 32:284,target 16 + 54:284 shift + 54:285 shift + 54:286 shift + 54:287 shift + 28:292,target 12 + 37:0 reduce + 54:288 shift + 54:290 shift + 54:289 shift + 24:284 reduce + 54:291 shift + 24:285 reduce + 54:292 shift + 24:286 reduce + 54:293 shift + 24:287 reduce + 24:288 reduce + 24:289 reduce + 24:290 reduce + 24:291 reduce + 24:292 reduce + 23:291,target 7 + 24:293 reduce + 54:310 goto + 2:0,target 40 + 38:285,target 22 + 54:311 goto + 35:293,target 19 + 44:0,target 28 + 17:290,target 1 + 17:289,target 1 + 13:0,target 65 + 33:284,target 17 + 7:266,target 26 + 10:0 reduce + 29:292,target 13 + 30:292,target 14 + 0:308,target 11 + 0:298,target 60 + 52:0 reduce + 24:291,target 8 + 39:285,target 23 + 40:285,target 24 + 29:284 reduce + 30:284 reduce + 29:285 reduce + 30:285 reduce + 36:293,target 20 + 29:286 reduce + 30:286 reduce + 29:287 reduce + 30:287 reduce + 29:288 reduce + 30:288 reduce + 60:295 shift + 29:289 reduce + 29:290 reduce + 30:289 reduce + 30:290 reduce + 60:296 shift + 7:283,target 43 + 18:289,target 2 + 18:290,target 2 + 29:291 reduce + 30:291 reduce + 29:292 reduce + 30:292 reduce + 34:284,target 18 + 29:293 reduce + 30:293 reduce + 31:292,target 15 + 24:0 reduce + 41:0,target 25 + 66:0 reduce + 10:0,target 42 + 25:291,target 9 + 41:285,target 25 + 37:293,target 21 + 7:310,target 55 + 7:309,target 54 + 19:289,target 3 + 19:290,target 3 + 20:289,target 4 + 20:290,target 4 + 35:284,target 19 + 32:292,target 16 + 35:284 reduce + 35:285 reduce + 7:257,target 17 + 35:286 reduce + 35:287 reduce + 35:288 reduce + 35:289 reduce + 35:290 reduce + 38:0 reduce + 35:291 reduce + 35:292 reduce + 0:300,target 4 + 35:293 reduce + 26:291,target 10 + 42:285,target 26 + 68:0,target 53 + 38:293,target 22 + 54:287,target 47 + 37:0,target 21 + 21:289,target 5 + 21:290,target 5 + 36:284,target 20 + 33:292,target 17 + 7:274,target 34 + 11:0 reduce + 53:0 reduce + 27:291,target 11 + 43:285,target 27 + 41:284 reduce + 41:285 reduce + 39:293,target 23 + 40:293,target 24 + 41:286 reduce + 41:287 reduce + 41:288 reduce + 41:289 reduce + 41:290 reduce + 41:291 reduce + 22:289,target 6 + 22:290,target 6 + 41:292 reduce + 37:284,target 21 + 41:293 reduce + 65:0,target 52 + 7:291,target 51 + 34:292,target 18 + 34:0,target 18 + 0:300 shift + 0:301 shift + 0:303 shift + 0:304 shift + 25:0 reduce + 0:305 shift + 0:296 shift + 0:306 shift + 28:291,target 12 + 0:307 shift + 0:297 shift + 0:308 shift + 0:298 reduce + 0:299 shift + 67:0 reduce + 0:312 goto + 41:293,target 25 + 0:0 reduce + 0:315 goto + 23:289,target 7 + 23:290,target 7 + 38:284,target 22 + 35:292,target 19 + 5:298,target 62 + 17:288,target 1 + 46:291 reduce + 46:292 reduce + 7:265,target 25 + 46:293 reduce + 60:296,target 67 + 29:291,target 13 + 30:291,target 14 + 62:0,target 58 + 39:0 reduce + 40:0 reduce + 0:297,target 2 + 0:307,target 10 + 31:0,target 15 + 42:293,target 26 + 24:289,target 8 + 24:290,target 8 + 39:284,target 23 + 40:284,target 24 + 5:298 reduce + 36:292,target 20 + 6:298,target 64 + 7:282,target 42 + 18:288,target 2 + 15:296,target 62 + 12:0 accept + 31:291,target 15 + 43:293,target 27 + 54:0 reduce + 22:284 reduce + 22:285 reduce + 22:286 reduce + 22:287 reduce + 25:289,target 9 + 25:290,target 9 + 22:288 reduce + 41:284,target 25 + 22:289 reduce + 22:290 reduce + 58:0,target 66 + 22:291 reduce + 22:292 reduce + 22:293 reduce + 37:292,target 21 + 27:0,target 11 + 19:288,target 3 + 20:288,target 4 + 32:291,target 16 + 26:0 reduce + 44:293,target 28 + 68:0 reduce + 26:289,target 10 + 26:290,target 10 + 42:284,target 26 + 1:0 reduce + 38:292,target 22 + 54:286,target 46 + 8:298,target 63 + 27:284 reduce + 21:288,target 5 + 27:285 reduce + 27:286 reduce + 27:287 reduce + 27:288 reduce + 27:289 reduce + 27:290 reduce + 55:0,target 48 + 27:291 reduce + 33:291,target 17 + 7:273,target 33 + 27:292 reduce + 27:293 reduce + 24:0,target 8 + 45:293,target 29 + 0:315,target 13 + 41:0 reduce + 27:289,target 11 + 27:290,target 11 + 43:284,target 27 + 39:292,target 23 + 40:292,target 24 + 9:298,target 61 + 22:288,target 6 + 7:290,target 50 + 7:289,target 49 + 34:291,target 18 + 46:293,target 30 + 13:0 reduce + 9:0,target 61 + 33:284 reduce + 63:291 shift + 33:285 reduce + 63:292 shift + 33:286 reduce + 63:293 shift + 33:287 reduce + 28:289,target 12 + 28:290,target 12 + 33:288 reduce + 33:289 reduce + 33:290 reduce + 55:0 reduce + 52:0,target 36 + 33:291 reduce + 33:292 reduce + 33:293 reduce + 41:292,target 25 + 63:311 goto + 21:0,target 5 + 23:288,target 7 + 35:291,target 19 + 47:293,target 31 + 17:287,target 1 + 7:264,target 24 + 60:295,target 66 + 27:0 reduce + 29:289,target 13 + 29:290,target 13 + 30:289,target 14 + 30:290,target 14 + 0:296,target 1 + 0:306,target 9 + 42:292,target 26 + 6:0,target 64 + 38:284 reduce + 2:0 reduce + 38:285 reduce + 24:288,target 8 + 38:286 reduce + 38:287 reduce + 38:288 reduce + 38:289 reduce + 38:290 reduce + 48:0,target 32 + 38:291 reduce + 36:291,target 20 + 38:292 reduce + 38:293 reduce + 17:0,target 1 + 48:293,target 32 + 7:281,target 41 + 18:287,target 2 + 15:295,target 61 + 31:289,target 15 + 31:290,target 15 + 42:0 reduce + 43:292,target 27 + 25:288,target 9 + 37:291,target 21 + 50:293,target 34 + 49:293,target 33 + 3:0,target 54 + 19:287,target 3 + 20:287,target 4 + 32:289,target 16 + 32:290,target 16 + 45:0,target 29 + 44:291 reduce + 14:0 reduce + 44:292 reduce + 44:293 reduce + 14:0,target 55 + 44:292,target 28 + 14:302 shift + 56:0 reduce + 26:288,target 10 + 3:302 shift + 3:294 shift + 38:291,target 22 + 54:285,target 45 + 21:287,target 5 + 3:314 goto + 33:289,target 17 + 33:290,target 17 + 7:272,target 32 + 45:292,target 29 + 28:0 reduce + 0:0,target 60 + 27:288,target 11 + 19:284 reduce + 20:284 reduce + 50:291 reduce + 49:291 reduce + 19:285 reduce + 20:285 reduce + 42:0,target 26 + 50:292 reduce + 49:292 reduce + 19:286 reduce + 20:286 reduce + 50:293 reduce + 49:293 reduce + 3:0 reduce + 19:287 reduce + 20:287 reduce + 39:291,target 23 + 40:291,target 24 + 19:288 reduce + 20:288 reduce + 11:0,target 38 + 19:289 reduce + 19:290 reduce + 20:289 reduce + 20:290 reduce + 19:291 reduce + 20:291 reduce + 19:292 reduce + 20:292 reduce + 19:293 reduce + 20:293 reduce + 22:287,target 6 + 7:288,target 48 + 34:289,target 18 + 34:290,target 18 + 46:292,target 30 + 8:298 reduce + 28:288,target 12 + 43:0 reduce + 41:291,target 25 + 23:287,target 7 + 25:284 reduce + 55:291 shift + 25:285 reduce + 35:289,target 19 + 35:290,target 19 + 38:0,target 22 + 55:292 shift + 25:286 reduce + 55:293 shift + 25:287 reduce + 25:288 reduce + 25:289 reduce + 25:290 reduce + 47:292,target 31 + 17:286,target 1 + 25:291 reduce + 25:292 reduce + 7:263,target 23 + 25:293 reduce + 55:311 goto + 29:288,target 13 + 30:288,target 14 + 0:305,target 8 + 57:0 reduce + 42:291,target 26 + 54:293,target 53 + 24:287,target 8 + 36:289,target 20 + 36:290,target 20 + 48:292,target 32 + 7:280,target 40 + 7:279,target 39 + 18:286,target 2 + 3:314,target 16 + 66:0,target 57 + 31:288,target 15 + 31:284 reduce + 29:0 reduce + 30:0 reduce + 31:285 reduce + 35:0,target 19 + 31:286 reduce + 31:287 reduce + 31:288 reduce + 43:291,target 27 + 31:289 reduce + 31:290 reduce + 31:291 reduce + 31:292 reduce + 31:293 reduce + 55:293,target 53 + 25:287,target 9 + 4:0 reduce + 37:289,target 21 + 37:290,target 21 + 50:292,target 34 + 49:292,target 33 + 19:286,target 3 + 20:286,target 4 + 32:288,target 16 + 44:291,target 28 + 44:0 reduce + 63:0,target 50 + 26:287,target 10 + 36:284 reduce + 32:0,target 16 + 36:285 reduce + 36:286 reduce + 38:289,target 22 + 38:290,target 22 + 54:284,target 44 + 36:287 reduce + 36:288 reduce + 36:289 reduce + 36:290 reduce + 36:291 reduce + 21:286,target 5 + 36:292 reduce + 36:293 reduce + 33:288,target 17 + 7:271,target 31 + 16:0 reduce + 45:291,target 29 + 58:0 reduce + 27:287,target 11 + 54:311,target 64 + 39:289,target 23 + 39:290,target 23 + 40:289,target 24 + 40:290,target 24 + 22:286,target 6 + 59:0,target 45 + 7:287,target 47 + 34:288,target 18 + 42:284 reduce + 28:0,target 12 + 42:285 reduce + 42:286 reduce + 42:287 reduce + 42:288 reduce + 46:291,target 30 + 42:289 reduce + 42:290 reduce + 42:291 reduce + 42:292 reduce + 31:0 reduce + 42:293 reduce + 28:287,target 12 + 55:311,target 65 + 41:289,target 25 + 41:290,target 25 + 5:0 reduce + 23:286,target 7 + 35:288,target 19 + 47:291,target 31 + 17:285,target 1 + 7:262,target 22 + 56:0,target 49 + 29:287,target 13 + 30:287,target 14 + 45:0 reduce + 0:304,target 7 + 25:0,target 9 + 42:289,target 26 + 42:290,target 26 + 17:284 reduce + 47:291 reduce + 17:285 reduce + 47:292 reduce + 17:286 reduce + 54:292,target 52 + 47:293 reduce + 17:287 reduce + 24:286,target 8 + 17:288 reduce + 17:290 reduce + 17:289 reduce + 17:291 reduce + 17:292 reduce + 17:293 reduce + 36:288,target 20 + 48:291,target 32 + 7:278,target 38 + 18:285,target 2 + 17:0 reduce + 31:287,target 15 + 6:298 reduce + 43:289,target 27 + 43:290,target 27 + 59:0 reduce + 55:292,target 52 + 25:286,target 9 + 53:0,target 37 + 22:0,target 6 + 37:288,target 21 + 23:284 reduce + 50:291,target 34 + 49:291,target 33 + 19:285,target 3 + 20:285,target 4 + 23:285 reduce + 23:286 reduce + 23:287 reduce + 23:288 reduce + 23:289 reduce + 23:290 reduce + 23:291 reduce + 32:287,target 16 + 23:292 reduce + 23:293 reduce + 32:0 reduce + 26:286,target 10 + 6:0 reduce + 38:288,target 22 + 7:0,target 46 + 21:285,target 5 + 50:0,target 34 + 49:0,target 33 + 17:293,target 1 + 63:293,target 53 + 33:287,target 17 + 7:270,target 30 + 7:269,target 29 + 18:0,target 2 + 3:294,target 14 + 28:284 reduce + 0:312,target 12 + 28:285 reduce + 46:0 reduce + 28:286 reduce + 28:287 reduce + 27:286,target 11 + 28:288 reduce + 28:289 reduce + 28:290 reduce + 28:291 reduce + 28:292 reduce + 54:310,target 63 + 28:293 reduce + 39:288,target 23 + 40:288,target 24 + 22:285,target 6 + 7:286,target 46 + 18:293,target 2 + 34:287,target 18 + 4:0,target 39 + 18:0 reduce + 46:0,target 30 + 28:286,target 12 + 61:0 reduce + 41:288,target 25 + 34:284 reduce + 34:285 reduce + 23:285,target 7 + 34:286 reduce + 34:287 reduce + 7:313,target 57 + 34:288 reduce + 34:289 reduce + 34:290 reduce + 19:293,target 3 + 20:293,target 4 + 34:291 reduce + 34:292 reduce + 35:287,target 19 + 34:293 reduce + 17:284,target 1 + 7:261,target 21 + 14:302,target 60 + 29:286,target 13 + 30:286,target 14 + 33:0 reduce + 0:303,target 6 + 42:288,target 26 + 1:0,target 41 + 7:0 reduce + 54:291,target 51 + 24:285,target 8 + 43:0,target 27 + 21:293,target 5 + 36:287,target 20 + 12:0,target 0 + 63:311,target 68 + 7:277,target 37 + 18:284,target 2 + 39:284 reduce + 40:284 reduce + 39:285 reduce + 40:285 reduce + 39:286 reduce + 40:286 reduce + 39:287 reduce + 40:287 reduce + 39:288 reduce + 40:288 reduce + 31:286,target 15 + 39:289 reduce + 39:290 reduce + 40:289 reduce + 40:290 reduce + 39:291 reduce + 40:291 reduce + 39:292 reduce + 40:292 reduce + 39:293 reduce + 40:293 reduce + 47:0 reduce + 43:288,target 27 + 55:291,target 51 + 25:285,target 9 + 22:293,target 6 + 37:287,target 21 + 19:284,target 3 + 20:284,target 4 + 39:0,target 23 + 40:0,target 24 + 32:286,target 16 + 19:0 reduce + 20:0 reduce + 62:0 reduce + 26:285,target 10 + 45:291 reduce + 45:292 reduce + 23:293,target 7 + 45:293 reduce + 38:287,target 22 + 21:284,target 5 + 15:295 shift + 15:296 shift + 17:292,target 1 + 63:292,target 52 + 33:286,target 17 + 7:268,target 28 + 34:0 reduce + 67:0,target 59 + 27:285,target 11 + 36:0,target 20 + 24:293,target 8 + 8:0 reduce + 39:287,target 23 + 40:287,target 24 + 22:284,target 6 + 7:285,target 45 + 18:292,target 2 + 21:284 reduce + 21:285 reduce + 34:286,target 18 + 21:286 reduce + 21:287 reduce + 21:288 reduce +} + +array set fitssend::rules { + 9,l 309 + 11,l 309 + 32,l 310 + 53,l 313 + 6,l 309 + 28,l 310 + 50,l 313 + 49,l 313 + 3,l 309 + 25,l 309 + 46,l 313 + 0,l 317 + 22,l 309 + 43,l 312 + 64,l 315 + 18,l 309 + 40,l 312 + 39,l 312 + 61,l 315 + 15,l 309 + 36,l 311 + 57,l 314 + 12,l 309 + 33,l 310 + 54,l 314 + 7,l 309 + 29,l 310 + 30,l 310 + 51,l 313 + 4,l 309 + 26,l 309 + 47,l 313 + 1,l 309 + 23,l 309 + 44,l 312 + 65,l 316 + 19,l 309 + 20,l 309 + 41,l 312 + 62,l 315 + 16,l 309 + 37,l 311 + 58,l 314 + 13,l 309 + 34,l 310 + 55,l 314 + 8,l 309 + 10,l 309 + 31,l 310 + 52,l 313 + 5,l 309 + 27,l 309 + 48,l 313 + 2,l 309 + 24,l 309 + 45,l 312 + 66,l 316 + 21,l 309 + 42,l 312 + 63,l 315 + 17,l 309 + 38,l 312 + 60,l 315 + 59,l 314 + 14,l 309 + 35,l 311 + 56,l 314 +} + +array set fitssend::rules { + 63,dc 1 + 12,dc 1 + 26,dc 1 + 3,dc 1 + 41,dc 1 + 55,dc 1 + 18,dc 1 + 33,dc 1 + 9,dc 1 + 47,dc 1 + 62,dc 1 + 11,dc 1 + 25,dc 1 + 2,dc 1 + 40,dc 1 + 39,dc 1 + 54,dc 0 + 17,dc 1 + 32,dc 1 + 8,dc 1 + 46,dc 0 + 61,dc 1 + 10,dc 1 + 24,dc 1 + 1,dc 1 + 38,dc 1 + 53,dc 3 + 16,dc 1 + 31,dc 1 + 7,dc 1 + 45,dc 2 + 60,dc 0 + 59,dc 3 + 23,dc 1 + 0,dc 1 + 37,dc 1 + 52,dc 2 + 66,dc 1 + 15,dc 1 + 29,dc 1 + 30,dc 1 + 6,dc 1 + 44,dc 2 + 58,dc 2 + 22,dc 1 + 36,dc 1 + 51,dc 2 + 65,dc 0 + 14,dc 1 + 28,dc 1 + 5,dc 1 + 43,dc 2 + 57,dc 3 + 21,dc 1 + 35,dc 1 + 50,dc 2 + 49,dc 1 + 64,dc 1 + 13,dc 1 + 27,dc 1 + 4,dc 1 + 42,dc 1 + 56,dc 2 + 19,dc 1 + 20,dc 1 + 34,dc 1 + 48,dc 1 +} + +array set fitssend::rules { + 41,line 157 + 7,line 117 + 37,line 149 + 4,line 114 + 34,line 145 + 1,line 111 + 31,line 142 + 27,line 137 + 24,line 134 + 21,line 131 + 17,line 127 + 14,line 124 + 11,line 121 + 66,line 193 + 63,line 188 + 60,line 184 + 59,line 181 + 56,line 178 + 53,line 171 + 50,line 168 + 49,line 167 + 46,line 164 + 43,line 159 + 9,line 119 + 40,line 155 + 39,line 154 + 6,line 116 + 36,line 148 + 3,line 113 + 33,line 144 + 29,line 140 + 30,line 141 + 26,line 136 + 23,line 133 + 19,line 129 + 20,line 130 + 16,line 126 + 13,line 123 + 10,line 120 + 65,line 192 + 62,line 186 + 58,line 180 + 55,line 175 + 52,line 170 + 48,line 166 + 45,line 161 + 42,line 158 + 8,line 118 + 38,line 153 + 5,line 115 + 35,line 147 + 2,line 112 + 32,line 143 + 28,line 139 + 25,line 135 + 22,line 132 + 18,line 128 + 15,line 125 + 12,line 122 + 64,line 189 + 61,line 185 + 57,line 179 + 54,line 174 + 51,line 169 + 47,line 165 + 44,line 160 +} + +array set fitssend::lr1_table { + 66,trans {} + 35 {{19 {0 284 285 286 287 288 289 290 291 292 293} 1}} + 14,trans {{302 60}} + 36 {{20 {0 284 285 286 287 288 289 290 291 292 293} 1}} + 33,trans {} + 37 {{21 {0 284 285 286 287 288 289 290 291 292 293} 1}} + 52,trans {} + 38 {{22 {0 284 285 286 287 288 289 290 291 292 293} 1}} + 39 {{23 {0 284 285 286 287 288 289 290 291 292 293} 1}} + 40 {{24 {0 284 285 286 287 288 289 290 291 292 293} 1}} + 18,trans {} + 41 {{25 {0 284 285 286 287 288 289 290 291 292 293} 1}} + 1,trans {} + 37,trans {} + 42 {{26 {0 284 285 286 287 288 289 290 291 292 293} 1}} + 56,trans {} + 43 {{27 {0 284 285 286 287 288 289 290 291 292 293} 1}} + 44 {{28 {0 291 292 293} 1}} + 23,trans {} + 45 {{29 {0 291 292 293} 1}} + 5,trans {} + 42,trans {} + 46 {{30 {0 291 292 293} 1}} + 61,trans {} + 47 {{31 {0 291 292 293} 1}} + 48 {{32 {0 291 292 293} 1}} + 27,trans {} + 9,trans {} + 50 {{34 {0 291 292 293} 1}} + 49 {{33 {0 291 292 293} 1}} + 46,trans {} + 51 {{35 0 1}} + 65,trans {} + 52 {{36 0 1}} + 13,trans {{298 58} {316 59}} + 53 {{37 0 1}} + 32,trans {} + 54 {{47 0 1} {50 0 1} {51 0 1} {53 0 1} {28 {0 291 292 293} 0} {29 {0 291 292 293} 0} {30 {0 291 292 293} 0} {31 {0 291 292 293} 0} {32 {0 291 292 293} 0} {33 {0 291 292 293} 0} {34 {0 291 292 293} 0} {35 0 0} {36 0 0} {37 0 0}} + 51,trans {} + 55 {{48 0 1} {52 0 1} {35 0 0} {36 0 0} {37 0 0}} + 56 {{49 0 1}} + 17,trans {} + 57 {{43 0 2}} + 0,trans {{296 1} {297 2} {299 3} {300 4} {301 5} {303 6} {304 7} {305 8} {306 9} {307 10} {308 11} {312 12} {315 13}} + 36,trans {} + 58 {{66 0 1}} + 55,trans {{291 51} {292 52} {293 53} {311 65}} + 60 {{57 0 2} {59 0 2}} + 59 {{45 0 2}} + 61 {{56 0 2}} + 22,trans {} + 62 {{58 0 2}} + 4,trans {} + 63 {{50 0 2} {53 0 2} {35 0 0} {36 0 0} {37 0 0}} + 41,trans {} + 60,trans {{295 66} {296 67}} + 59,trans {} + 64 {{51 0 2}} + 65 {{52 0 2}} + 66 {{57 0 3}} + 26,trans {} + 8,trans {} + 67 {{59 0 3}} + 45,trans {} + 64,trans {} + 68 {{53 0 3}} + 12,trans {} + 31,trans {} + 50,trans {} + 49,trans {} + 68,trans {} + 16,trans {} + 35,trans {} + 54,trans {{284 44} {285 45} {286 46} {287 47} {288 48} {289 49} {290 50} {291 51} {292 52} {293 53} {310 63} {311 64}} + 21,trans {} + 3,trans {{294 14} {302 15} {314 16}} + 40,trans {} + 39,trans {} + 58,trans {} + 10 {{42 0 1}} + 11 {{38 0 1}} + 25,trans {} + 7,trans {{257 17} {258 18} {259 19} {260 20} {261 21} {262 22} {263 23} {264 24} {265 25} {266 26} {267 27} {268 28} {269 29} {270 30} {271 31} {272 32} {273 33} {274 34} {275 35} {276 36} {277 37} {278 38} {279 39} {280 40} {281 41} {282 42} {283 43} {284 44} {285 45} {286 46} {287 47} {288 48} {289 49} {290 50} {291 51} {292 52} {293 53} {309 54} {310 55} {311 56} {313 57}} + 12 {{0 0 1}} + 44,trans {} + 13 {{45 0 1} {65 0 0} {66 0 0}} + 63,trans {{291 51} {292 52} {293 53} {311 68}} + 14 {{55 0 1} {57 0 1} {59 0 1}} + 11,trans {} + 15 {{56 0 1} {58 0 1}} + 30,trans {} + 29,trans {} + 16 {{44 0 2}} + 48,trans {} + 0 {{0 0 0} {38 0 0} {39 0 0} {40 0 0} {41 0 0} {42 0 0} {43 0 0} {44 0 0} {45 0 0} {60 {0 298} 0} {61 {0 298} 0} {62 {0 298} 0} {63 {0 298} 0} {64 {0 298} 0}} + 17 {{1 {0 284 285 286 287 288 289 290 291 292 293} 1}} + 67,trans {} + 1 {{41 0 1}} + 18 {{2 {0 284 285 286 287 288 289 290 291 292 293} 1}} + 15,trans {{295 61} {296 62}} + 2 {{40 0 1}} + 19 {{3 {0 284 285 286 287 288 289 290 291 292 293} 1}} + 20 {{4 {0 284 285 286 287 288 289 290 291 292 293} 1}} + 34,trans {} + 3 {{44 0 1} {54 0 0} {55 0 0} {56 0 0} {57 0 0} {58 0 0} {59 0 0}} + 21 {{5 {0 284 285 286 287 288 289 290 291 292 293} 1}} + 53,trans {} + 4 {{39 0 1}} + 22 {{6 {0 284 285 286 287 288 289 290 291 292 293} 1}} + 5 {{62 {0 298} 1}} + 23 {{7 {0 284 285 286 287 288 289 290 291 292 293} 1}} + 20,trans {} + 19,trans {} + 6 {{64 {0 298} 1}} + 2,trans {} + 24 {{8 {0 284 285 286 287 288 289 290 291 292 293} 1}} + 38,trans {} + 7 {{43 0 1} {46 0 0} {47 0 0} {48 0 0} {49 0 0} {50 0 0} {51 0 0} {52 0 0} {53 0 0} {1 {0 284 285 286 287 288 289 290 291 292 293} 0} {2 {0 284 285 286 287 288 289 290 291 292 293} 0} {3 {0 284 285 286 287 288 289 290 291 292 293} 0} {4 {0 284 285 286 287 288 289 290 291 292 293} 0} {5 {0 284 285 286 287 288 289 290 291 292 293} 0} {6 {0 284 285 286 287 288 289 290 291 292 293} 0} {7 {0 284 285 286 287 288 289 290 291 292 293} 0} {8 {0 284 285 286 287 288 289 290 291 292 293} 0} {9 {0 284 285 286 287 288 289 290 291 292 293} 0} {10 {0 284 285 286 287 288 289 290 291 292 293} 0} {11 {0 284 285 286 287 288 289 290 291 292 293} 0} {12 {0 284 285 286 287 288 289 290 291 292 293} 0} {13 {0 284 285 286 287 288 289 290 291 292 293} 0} {14 {0 284 285 286 287 288 289 290 291 292 293} 0} {15 {0 284 285 286 287 288 289 290 291 292 293} 0} {16 {0 284 285 286 287 288 289 290 291 292 293} 0} {17 {0 284 285 286 287 288 289 290 291 292 293} 0} {18 {0 284 285 286 287 288 289 290 291 292 293} 0} {19 {0 284 285 286 287 288 289 290 291 292 293} 0} {20 {0 284 285 286 287 288 289 290 291 292 293} 0} {21 {0 284 285 286 287 288 289 290 291 292 293} 0} {22 {0 284 285 286 287 288 289 290 291 292 293} 0} {23 {0 284 285 286 287 288 289 290 291 292 293} 0} {24 {0 284 285 286 287 288 289 290 291 292 293} 0} {25 {0 284 285 286 287 288 289 290 291 292 293} 0} {26 {0 284 285 286 287 288 289 290 291 292 293} 0} {27 {0 284 285 286 287 288 289 290 291 292 293} 0} {28 {0 291 292 293} 0} {29 {0 291 292 293} 0} {30 {0 291 292 293} 0} {31 {0 291 292 293} 0} {32 {0 291 292 293} 0} {33 {0 291 292 293} 0} {34 {0 291 292 293} 0} {35 0 0} {36 0 0} {37 0 0}} + 25 {{9 {0 284 285 286 287 288 289 290 291 292 293} 1}} + 57,trans {} + 8 {{63 {0 298} 1}} + 26 {{10 {0 284 285 286 287 288 289 290 291 292 293} 1}} + 9 {{61 {0 298} 1}} + 27 {{11 {0 284 285 286 287 288 289 290 291 292 293} 1}} + 24,trans {} + 6,trans {} + 28 {{12 {0 284 285 286 287 288 289 290 291 292 293} 1}} + 43,trans {} + 29 {{13 {0 284 285 286 287 288 289 290 291 292 293} 1}} + 30 {{14 {0 284 285 286 287 288 289 290 291 292 293} 1}} + 62,trans {} + 31 {{15 {0 284 285 286 287 288 289 290 291 292 293} 1}} + 10,trans {} + 32 {{16 {0 284 285 286 287 288 289 290 291 292 293} 1}} + 28,trans {} + 33 {{17 {0 284 285 286 287 288 289 290 291 292 293} 1}} + 47,trans {} + 34 {{18 {0 284 285 286 287 288 289 290 291 292 293} 1}} +} + +array set fitssend::token_id_table { + 286 FK5_ + 286,t 0 + 287 J2000_ + 292,line 44 + 302,line 59 + 288 ICRS_ + 317,t 1 + 265,title WCSH + 289 GALACTIC_ + 290 ECLIPTIC_ + 300 HEIGHT_ + 284,title FK4 + 291 DEGREES_ + 301 IMAGE_ + 313,title {} + 292 ARCMIN_ + 302 KEYWORD_ + 288,line 39 + 293 ARCSEC_ + 303 RESAMPLE_ + 294 INT_ + 304 SIZE_ + 305 SLICE_ + 295 STRING_ + 306 TABLE_ + 296 BITPIX_ + 307 TYPE_ + 262,t 0 + 297 DEPTH_ + 308 WIDTH_ + 285,line 36 + 298 GZ_ + 310 skyframe + 309 wcssys + 299 HEADER_ + 311 rformat + 283,t 0 + 312 fitssend + 313 size + 314,t 1 + 314 header + 282,line 32 + 315 opt + 316 gz + 264,title WCSG + 317 start' + 283,title WCSZ + 312,title {} + 278,line 28 + error,line 109 + 258,t 0 + 275,line 25 + 279,t 0 + 280,t 0 + 311,t 1 + 272,line 22 + 263,title WCSF + 282,title WCSY + 311,title {} + 268,line 18 + 276,t 0 + 265,line 15 + 307,t 0 + 297,t 0 + 262,line 12 + 0,t 0 + 0 {$} + 262,title WCSE + 281,title WCSX + 310,title {} + 309,title {} + error,t 0 + 299,title HEADER + 258,line 8 + 273,t 0 + 294,t 0 + 304,t 0 + 317,line 194 + 261,title WCSD + 279,title WCSV + 280,title WCSW + 308,title WIDTH + 269,t 0 + 270,t 0 + 298,title GZ + 314,line 173 + 291,t 0 + 301,t 0 + 311,line 146 + 307,line 64 + 266,t 0 + 260,title WCSC + 259,title WCSB + 297,line 54 + 278,title WCSU + 307,title TYPE + 297,title DEPTH + 287,t 0 + 294,line 47 + 304,line 61 + error,title {} + 291,line 43 + 301,line 58 + 263,t 0 + 258,title WCSA + 287,line 38 + 277,title WCST + 284,t 0 + 306,title TABLE + 296,title BITPIX + 315,t 1 + 284,line 35 + 281,line 31 + 260,t 0 + 259,t 0 + 281,t 0 + 257,title WCS + 277,line 27 + 276,title WCSS + 312,t 1 + 305,title SLICE + 295,title string + 274,line 24 + 271,line 21 + 277,t 0 + 308,t 0 + 267,line 17 + 298,t 0 + 275,title WCSR + 294,title integer + 304,title SIZE + 264,line 14 + 261,line 11 + 274,t 0 + 305,t 0 + 295,t 0 + 257,line 7 + 274,title WCSQ + 293,title ARCSEC + 303,title RESAMPLE + error error + 271,t 0 + 292,t 0 + 302,t 0 + 316,line 191 + 273,title WCSP + 313,line 163 + 292,title ARCMIN + 302,title KEYWORD + 267,t 0 + 310,line 138 + 309,line 110 + 299,line 56 + 288,t 0 + 306,line 63 + 296,line 53 + 272,title WCSO + 291,title DEGREES + 293,line 45 + 301,title IMAGE + 303,line 60 + 264,t 0 + 285,t 0 + 289,line 40 + 290,line 41 + 300,line 57 + 316,t 1 + 286,line 37 + 271,title WCSN + 261,t 0 + 283,line 33 + 289,title GALACTIC + 290,title ECLIPTIC + 300,title HEIGHT + 282,t 0 + 279,line 29 + 280,line 30 + 313,t 1 + 276,line 26 + 257,t 0 + 269,title WCSL + 270,title WCSM + 273,line 23 + 288,title ICRS + 317,title {} + 278,t 0 + 310,t 1 + 309,t 1 + 299,t 0 + 269,line 19 + 270,line 20 + 266,line 16 + 268,title WCSK + 275,t 0 + 263,line 13 + 287,title J2000 + 316,title {} + 306,t 0 + 296,t 0 + 260,line 10 + 259,line 9 + 272,t 0 + 267,title WCSJ + 257 WCS_ + 286,title FK5 + 293,t 0 + 303,t 0 + 315,title {} + 258 WCSA_ + 260 WCSC_ + 259 WCSB_ + 261 WCSD_ + 262 WCSE_ + 263 WCSF_ + 264 WCSG_ + 315,line 183 + 265 WCSH_ + 266 WCSI_ + 267 WCSJ_ + 268,t 0 + 268 WCSK_ + 269 WCSL_ + 270 WCSM_ + 312,line 152 + 271 WCSN_ + 272 WCSO_ + 289,t 0 + 290,t 0 + 300,t 0 + 266,title WCSI + 273 WCSP_ + 274 WCSQ_ + 285,title B1950 + 314,title {} + 275 WCSR_ + 308,line 65 + 276 WCSS_ + 298,line 55 + 277 WCST_ + 278 WCSU_ + 279 WCSV_ + 280 WCSW_ + 281 WCSX_ + 305,line 62 + 282 WCSY_ + 295,line 49 + 265,t 0 + 283 WCSZ_ + 284 FK4_ + 285 B1950_ +} + +proc fitssend::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 _ wcs } + 2 { set _ wcsa } + 3 { set _ wcsb } + 4 { set _ wcsc } + 5 { set _ wcsd } + 6 { set _ wcse } + 7 { set _ wcsf } + 8 { set _ wcsg } + 9 { set _ wcsh } + 10 { set _ wcsi } + 11 { set _ wcsj } + 12 { set _ wcsk } + 13 { set _ wcsl } + 14 { set _ wcsm } + 15 { set _ wcsn } + 16 { set _ wcso } + 17 { set _ wcsp } + 18 { set _ wcsq } + 19 { set _ wcsr } + 20 { set _ wcss } + 21 { set _ wcst } + 22 { set _ wcsu } + 23 { set _ wcsv } + 24 { set _ wcsw } + 25 { set _ wcsx } + 26 { set _ wcsy } + 27 { set _ wcsz } + 28 { set _ fk4 } + 29 { set _ fk4 } + 30 { set _ fk5 } + 31 { set _ fk5 } + 32 { set _ icrs } + 33 { set _ galactic } + 34 { set _ ecliptic } + 35 { set _ degrees } + 36 { set _ arcmin } + 37 { set _ arcsec } + 38 { ProcessSendCmdCurrent "get fits width" } + 39 { ProcessSendCmdCurrent "get fits height" } + 40 { ProcessSendCmdCurrent "get fits depth" } + 41 { ProcessSendCmdCurrent "get fits bitpix" } + 42 { FitsSendCmdType } + 45 { FitsSendCmd $1 } + 46 { ProcessSendCmdCurrent "get fits size" } + 47 { ProcessSendCmdCurrent "get fits size $1 fk5 degrees" } + 48 { ProcessSendCmdCurrent "get fits size wcs $1 degrees" } + 49 { ProcessSendCmdCurrent "get fits size wcs fk5 $1" } + 50 { ProcessSendCmdCurrent "get fits size $1 $2 degrees" } + 51 { ProcessSendCmdCurrent "get fits size $1 fk5 $2" } + 52 { ProcessSendCmdCurrent "get fits size wcs $1 $2" } + 53 { ProcessSendCmdCurrent "get fits size $1 $2 $3" } + 54 { ProcessSendCmdSend {.txt} "get fits header 1" } + 55 { ProcessSendCmdSend {.txt} "get fits header $1" } + 56 { ProcessSendCmdCurrent "get fits header keyword \{$2\}" } + 57 { ProcessSendCmdCurrent "get fits header $1 keyword \{$3\}" } + 58 { ProcessSendCmdCurrent "get fits header keyword \{BITPIX\}" } + 59 { ProcessSendCmdCurrent "get fits header $1 keyword \{BITPIX\}" } + 60 { set _ image } + 61 { set _ table } + 62 { set _ image } + 63 { set _ slice } + 64 { set _ resample } + } + 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 fitssend::yyerror {msg} { + variable yycnt + variable yy_current_buffer + variable index_ + + ParserError $msg $yycnt $yy_current_buffer $index_ +} |