summaryrefslogtreecommitdiffstats
path: root/ds9/parsers/iexamsendlex.tcl
diff options
context:
space:
mode:
Diffstat (limited to 'ds9/parsers/iexamsendlex.tcl')
-rw-r--r--ds9/parsers/iexamsendlex.tcl793
1 files changed, 793 insertions, 0 deletions
diff --git a/ds9/parsers/iexamsendlex.tcl b/ds9/parsers/iexamsendlex.tcl
new file mode 100644
index 0000000..2c8250b
--- /dev/null
+++ b/ds9/parsers/iexamsendlex.tcl
@@ -0,0 +1,793 @@
+package provide DS9 1.0
+
+######
+# Begin autogenerated fickle (version 2.1) routines.
+# Although fickle 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/fickle for other details.
+######
+
+namespace eval iexamsend {
+ variable yylval
+
+ variable yytext {}
+ variable yyleng 0
+ variable yyin stdin
+ variable yyout stdout
+ variable yy_current_buffer {}
+
+ variable yylineno 1
+
+ variable index_ 0
+ variable done_ 0
+}
+
+# ECHO copies yytext to the scanner's output if no arguments are
+# given. The scanner writes its ECHO output to the yyout global
+# (default, stdout), which may be redefined by the user simply by
+# assigning it to some other channel.
+# -- from the flex(1) man page
+proc iexamsend::ECHO {{s ""}} {
+ variable yytext
+ variable yyout
+
+ if {$s == ""} {
+ puts -nonewline $yyout $yytext
+ } else {
+ puts -nonewline $yyout $s
+ }
+}
+
+# YY_FLUSH_BUFFER flushes the scanner's internal buffer so that the
+# next time the scanner attempts to match a token, it will first
+# refill the buffer using YY_INPUT.
+# -- from the flex(1) man page
+proc iexamsend::YY_FLUSH_BUFFER {} {
+ variable yy_current_buffer
+ variable index_
+ variable done_
+
+ set yy_current_buffer ""
+ set index_ 0
+ set done_ 0
+}
+
+# yyrestart(new_file) may be called to point yyin at the new input
+# file. The switch-over to the new file is immediate (any previously
+# buffered-up input is lost). Note that calling yyrestart with yyin
+# as an argument thus throws away the current input buffer and
+# continues scanning the same input file.
+# -- from the flex(1) man page
+proc iexamsend::yyrestart {new_file} {
+ variable yyin
+
+ set yyin $new_file
+ YY_FLUSH_BUFFER
+}
+
+# The nature of how it gets its input can be controlled by defining
+# the YY_INPUT macro. YY_INPUT's calling sequence is
+# "YY_INPUT(buf,result,max_size)". Its action is to place up to
+# max_size characters in the character array buf and return in the
+# integer variable result either the number of characters read or the
+# constant YY_NULL (0 on Unix systems) to indicate EOF. The default
+# YY_INPUT reads from the global file-pointer "yyin".
+# -- from the flex(1) man page
+proc iexamsend::YY_INPUT {buf result max_size} {
+ variable yyin
+
+ upvar $result ret_val
+ upvar $buf new_data
+ if {$yyin != ""} {
+ set new_data [read $yyin $max_size]
+ set ret_val [string length $new_data]
+ } else {
+ set new_data ""
+ set ret_val 0
+ }
+}
+
+# yy_scan_string sets up input buffers for scanning in-memory
+# strings instead of files. Note that switching input sources does
+# not change the start condition.
+# -- from the flex(1) man page
+proc iexamsend::yy_scan_string {str} {
+ variable yy_current_buffer
+ variable yyin
+
+ append yy_current_buffer $str
+ set yyin ""
+}
+
+# unput(c) puts the character c back onto the input stream. It will
+# be the next character scanned.
+# -- from the flex(1) man page
+proc iexamsend::unput {c} {
+ variable yy_current_buffer
+ variable index_
+
+ set s [string range $yy_current_buffer 0 [expr {$index_ - 1}]]
+ append s $c
+ set yy_current_buffer [append s [string range $yy_current_buffer $index_ end]]
+}
+
+# Returns all but the first n characters of the current token back to
+# the input stream, where they will be rescanned when the scanner
+# looks for the next match. yytext and yyleng are adjusted
+# appropriately.
+# -- from the flex(1) man page
+proc iexamsend::yyless {n} {
+ variable yy_current_buffer
+ variable index_
+ variable yytext
+ variable yyleng
+
+ set s [string range $yy_current_buffer 0 [expr {$index_ - 1}]]
+ append s [string range $yytext $n end]
+ set yy_current_buffer [append s [string range $yy_current_buffer $index_ end]]
+ set yytext [string range $yytext 0 [expr {$n - 1}]]
+ set yyleng [string length $yytext]
+}
+
+# input() reads the next character from the input stream.
+# -- from the flex(1) man page
+proc iexamsend::input {} {
+ variable yy_current_buffer
+ variable index_
+ variable done_
+
+ if {[string length $yy_current_buffer] - $index_ < 1024} {
+ set new_buffer ""
+ set new_buffer_size 0
+ if {$done_ == 0} {
+ YY_INPUT new_buffer new_buffer_size 1024
+ append yy_current_buffer $new_buffer
+ if {$new_buffer_size == 0} {
+ set done_ 1
+ }
+ }
+ if $done_ {
+ if {[string length $yy_current_buffer] - $index_ == 0} {
+ return {}
+ }
+ }
+ }
+ set c [string index $yy_current_buffer $index_]
+ incr index_
+ return $c
+}
+
+######
+# autogenerated yylex function created by fickle
+######
+
+# Whenever yylex() is called, it scans tokens from the global input
+# file yyin (which defaults to stdin). It continues until it either
+# reaches an end-of-file (at which point it returns the value 0) or
+# one of its actions executes a return statement.
+# -- from the flex(1) man page
+proc iexamsend::yylex {} {
+ variable yylval
+
+ variable yytext
+ variable yylineno
+ variable yyleng
+ variable yy_current_buffer
+ variable yy_flex_debug
+
+ variable index_
+ variable done_
+ variable state_table_
+
+set IMAGE_ 257
+set PHYSICAL_ 258
+set AMPLIFIER_ 259
+set DETECTOR_ 260
+set WCS_ 261
+set WCSA_ 262
+set WCSB_ 263
+set WCSC_ 264
+set WCSD_ 265
+set WCSE_ 266
+set WCSF_ 267
+set WCSG_ 268
+set WCSH_ 269
+set WCSI_ 270
+set WCSJ_ 271
+set WCSK_ 272
+set WCSL_ 273
+set WCSM_ 274
+set WCSN_ 275
+set WCSO_ 276
+set WCSP_ 277
+set WCSQ_ 278
+set WCSR_ 279
+set WCSS_ 280
+set WCST_ 281
+set WCSU_ 282
+set WCSV_ 283
+set WCSW_ 284
+set WCSX_ 285
+set WCSY_ 286
+set WCSZ_ 287
+set FK4_ 288
+set B1950_ 289
+set FK5_ 290
+set J2000_ 291
+set ICRS_ 292
+set GALACTIC_ 293
+set ECLIPTIC_ 294
+set DEGREES_ 295
+set SEXAGESIMAL_ 296
+set STRING_ 297
+set INT_ 298
+set ANY_ 299
+set BUTTON_ 300
+set COORDINATE_ 301
+set DATA_ 302
+set KEY_ 303
+set VALUE_ 304
+
+ while {1} {
+ if {[string length $yy_current_buffer] - $index_ < 1024} {
+ if {$done_ == 0} {
+ set buffer_size 0
+ set new_buffer ""
+ YY_INPUT new_buffer buffer_size 1024
+ append yy_current_buffer $new_buffer
+ if {$buffer_size == 0 && \
+ [string length $yy_current_buffer] - $index_ == 0} {
+ set done_ 1
+ }
+ }
+ if $done_ {
+ if {[string length $yy_current_buffer] - $index_ == 0} {
+ break
+ }
+ }
+ }
+ set yyleng 0
+ set matched_rule -1
+ # rule 0: any
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(any)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 0
+ }
+ # rule 1: button
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(button)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 1
+ }
+ # rule 2: coordinate
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(coordinate)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 2
+ }
+ # rule 3: data
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(data)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 3
+ }
+ # rule 4: key
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(key)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 4
+ }
+ # rule 5: value
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(value)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 5
+ }
+ # rule 6: image
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(image)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 6
+ }
+ # rule 7: physical
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(physical)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 7
+ }
+ # rule 8: amplifier
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(amplifier)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 8
+ }
+ # rule 9: detector
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(detector)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 9
+ }
+ # rule 10: wcs
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(wcs)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 10
+ }
+ # rule 11: wcsa
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(wcsa)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 11
+ }
+ # rule 12: wcsb
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(wcsb)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 12
+ }
+ # rule 13: wcsc
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(wcsc)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 13
+ }
+ # rule 14: wcsd
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(wcsd)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 14
+ }
+ # rule 15: wcse
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(wcse)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 15
+ }
+ # rule 16: wcsf
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(wcsf)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 16
+ }
+ # rule 17: wcsg
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(wcsg)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 17
+ }
+ # rule 18: wcsh
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(wcsh)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 18
+ }
+ # rule 19: wcsi
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(wcsi)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 19
+ }
+ # rule 20: wcsj
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(wcsj)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 20
+ }
+ # rule 21: wcsk
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(wcsk)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 21
+ }
+ # rule 22: wcsl
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(wcsl)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 22
+ }
+ # rule 23: wcsm
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(wcsm)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 23
+ }
+ # rule 24: wcsn
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(wcsn)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 24
+ }
+ # rule 25: wcso
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(wcso)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 25
+ }
+ # rule 26: wcsp
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(wcsp)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 26
+ }
+ # rule 27: wcsq
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(wcsq)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 27
+ }
+ # rule 28: wcsr
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(wcsr)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 28
+ }
+ # rule 29: wcss
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(wcss)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 29
+ }
+ # rule 30: wcst
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(wcst)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 30
+ }
+ # rule 31: wcsu
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(wcsu)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 31
+ }
+ # rule 32: wcsv
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(wcsv)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 32
+ }
+ # rule 33: wcsw
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(wcsw)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 33
+ }
+ # rule 34: wcsx
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(wcsx)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 34
+ }
+ # rule 35: wcsy
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(wcsy)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 35
+ }
+ # rule 36: wcsz
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(wcsz)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 36
+ }
+ # rule 37: fk4
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(fk4)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 37
+ }
+ # rule 38: b1950
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(b1950)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 38
+ }
+ # rule 39: fk5
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(fk5)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 39
+ }
+ # rule 40: j2000
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(j2000)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 40
+ }
+ # rule 41: icrs
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(icrs)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 41
+ }
+ # rule 42: galactic
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(galactic)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 42
+ }
+ # rule 43: ecliptic
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(ecliptic)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 43
+ }
+ # rule 44: degrees
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(degrees)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 44
+ }
+ # rule 45: sexagesimal
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(sexagesimal)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 45
+ }
+ # rule 46: \"[^\"]*\"
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(\"[^\"]*\")} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 46
+ }
+ # rule 47: \'[^\']*\'
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(\'[^\']*\')} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 47
+ }
+ # rule 48: \{[^\}]*\}
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(\{[^\}]*\})} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 48
+ }
+ # rule 49: \S+\S+
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(\S+\S+)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 49
+ }
+ # rule 50: \s
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(\s)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 50
+ }
+ # rule 51: .
+ if {[regexp -start $index_ -indices -line -nocase -- {\A(.)} $yy_current_buffer match] > 0 && \
+ [lindex $match 1] - $index_ + 1 > $yyleng} {
+ set yytext [string range $yy_current_buffer $index_ [lindex $match 1]]
+ set yyleng [string length $yytext]
+ set matched_rule 51
+ }
+ if {$matched_rule == -1} {
+ set yytext [string index $yy_current_buffer $index_]
+ set yyleng 1
+ }
+ incr index_ $yyleng
+ # workaround for Tcl's circumflex behavior
+ if {[string index $yytext end] == "\n"} {
+ set yy_current_buffer [string range $yy_current_buffer $index_ end]
+ set index_ 0
+ }
+ set numlines [expr {[llength [split $yytext "\n"]] - 1}]
+ switch -- $matched_rule {
+ 0 {
+return $ANY_
+ }
+ 1 {
+return $BUTTON_
+ }
+ 2 {
+return $COORDINATE_
+ }
+ 3 {
+return $DATA_
+ }
+ 4 {
+return $KEY_
+ }
+ 5 {
+return $VALUE_
+ }
+ 6 {
+return $IMAGE_
+ }
+ 7 {
+return $PHYSICAL_
+ }
+ 8 {
+return $AMPLIFIER_
+ }
+ 9 {
+return $DETECTOR_
+ }
+ 10 {
+return $WCS_
+ }
+ 11 {
+return $WCSA_
+ }
+ 12 {
+return $WCSB_
+ }
+ 13 {
+return $WCSC_
+ }
+ 14 {
+return $WCSD_
+ }
+ 15 {
+return $WCSE_
+ }
+ 16 {
+return $WCSF_
+ }
+ 17 {
+return $WCSG_
+ }
+ 18 {
+return $WCSH_
+ }
+ 19 {
+return $WCSI_
+ }
+ 20 {
+return $WCSJ_
+ }
+ 21 {
+return $WCSK_
+ }
+ 22 {
+return $WCSL_
+ }
+ 23 {
+return $WCSM_
+ }
+ 24 {
+return $WCSN_
+ }
+ 25 {
+return $WCSO_
+ }
+ 26 {
+return $WCSP_
+ }
+ 27 {
+return $WCSQ_
+ }
+ 28 {
+return $WCSR_
+ }
+ 29 {
+return $WCSS_
+ }
+ 30 {
+return $WCST_
+ }
+ 31 {
+return $WCSU_
+ }
+ 32 {
+return $WCSV_
+ }
+ 33 {
+return $WCSW_
+ }
+ 34 {
+return $WCSX_
+ }
+ 35 {
+return $WCSY_
+ }
+ 36 {
+return $WCSZ_
+ }
+ 37 {
+return $FK4_
+ }
+ 38 {
+return $FK4_
+ }
+ 39 {
+return $FK5_
+ }
+ 40 {
+return $FK5_
+ }
+ 41 {
+return $ICRS_
+ }
+ 42 {
+return $GALACTIC_
+ }
+ 43 {
+return $ECLIPTIC_
+ }
+ 44 {
+return $DEGREES_
+ }
+ 45 {
+return $SEXAGESIMAL_
+ }
+ 46 {
+set yylval [string range $yytext 1 end-1]; return $STRING_
+ }
+ 47 {
+set yylval [string range $yytext 1 end-1]; return $STRING_
+ }
+ 48 {
+set yylval [string range $yytext 1 end-1]; return $STRING_
+ }
+ 49 {
+set yylval $yytext; return $STRING_
+ }
+ 50 {
+# ignore whitespace
+ }
+ 51 {
+set yylval $yytext; return $yylval
+ }
+ default
+ { puts stderr "unmatched token: $yytext"; exit -1 }
+ }
+ incr yylineno $numlines
+ }
+ return 0
+}
+######
+# end autogenerated fickle functions
+######
+