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 mask { 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 mask::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 mask::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 mask::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 mask::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 mask::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 mask::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 mask::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 mask::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 mask::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 INT_ 288 set REAL_ 289 set STRING_ 290 set CLEAR_ 291 set CLOSE_ 292 set COLOR_ 293 set MARK_ 294 set NAN_ 295 set NONNAN_ 296 set NONZERO_ 297 set OPEN_ 298 set RANGE_ 299 set SYSTEM_ 300 set TRANSPARENCY_ 301 set ZERO_ 302 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: close if {[regexp -start $index_ -indices -line -nocase -- {\A(close)} $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: clear if {[regexp -start $index_ -indices -line -nocase -- {\A(clear)} $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: color if {[regexp -start $index_ -indices -line -nocase -- {\A(color)} $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: mark if {[regexp -start $index_ -indices -line -nocase -- {\A(mark)} $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: nan if {[regexp -start $index_ -indices -line -nocase -- {\A(nan)} $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: nonnan if {[regexp -start $index_ -indices -line -nocase -- {\A(nonnan)} $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: nonzero if {[regexp -start $index_ -indices -line -nocase -- {\A(nonzero)} $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: open if {[regexp -start $index_ -indices -line -nocase -- {\A(open)} $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: range if {[regexp -start $index_ -indices -line -nocase -- {\A(range)} $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: system if {[regexp -start $index_ -indices -line -nocase -- {\A(system)} $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: transparency if {[regexp -start $index_ -indices -line -nocase -- {\A(transparency)} $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: zero if {[regexp -start $index_ -indices -line -nocase -- {\A(zero)} $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: 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 12 } # rule 13: 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 13 } # rule 14: 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 14 } # rule 15: 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 15 } # rule 16: 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 16 } # rule 17: 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 17 } # rule 18: 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 18 } # rule 19: 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 19 } # rule 20: 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 20 } # rule 21: 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 21 } # rule 22: 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 22 } # rule 23: 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 23 } # rule 24: 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 24 } # rule 25: 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 25 } # rule 26: 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 26 } # rule 27: 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 27 } # rule 28: 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 28 } # rule 29: 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 29 } # rule 30: 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 30 } # rule 31: 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 31 } # rule 32: 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 32 } # rule 33: 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 33 } # rule 34: 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 34 } # rule 35: 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 35 } # rule 36: 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 36 } # rule 37: 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 37 } # rule 38: 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 38 } # rule 39: 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 39 } # rule 40: 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 40 } # rule 41: 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 41 } # rule 42: 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 42 } # rule 43: [+-]?{D}+ if {[regexp -start $index_ -indices -line -nocase -- {\A([+-]?([0-9])+)} $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: [+-]?{D}+\.?({E})? if {[regexp -start $index_ -indices -line -nocase -- {\A([+-]?([0-9])+\.?(([Ee][+-]?([0-9])+))?)} $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: [+-]?{D}*\.{D}+({E})? if {[regexp -start $index_ -indices -line -nocase -- {\A([+-]?([0-9])*\.([0-9])+(([Ee][+-]?([0-9])+))?)} $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 $CLOSE_ } 1 { return $CLEAR_ } 2 { return $COLOR_ } 3 { return $MARK_ } 4 { return $NAN_ } 5 { return $NONNAN_ } 6 { return $NONZERO_ } 7 { return $OPEN_ } 8 { return $RANGE_ } 9 { return $SYSTEM_ } 10 { return $TRANSPARENCY_ } 11 { return $ZERO_ } 12 { return $IMAGE_ } 13 { return $PHYSICAL_ } 14 { return $AMPLIFIER_ } 15 { return $DETECTOR_ } 16 { return $WCS_ } 17 { return $WCSA_ } 18 { return $WCSB_ } 19 { return $WCSC_ } 20 { return $WCSD_ } 21 { return $WCSE_ } 22 { return $WCSF_ } 23 { return $WCSG_ } 24 { return $WCSH_ } 25 { return $WCSI_ } 26 { return $WCSJ_ } 27 { return $WCSK_ } 28 { return $WCSL_ } 29 { return $WCSM_ } 30 { return $WCSN_ } 31 { return $WCSO_ } 32 { return $WCSP_ } 33 { return $WCSQ_ } 34 { return $WCSR_ } 35 { return $WCSS_ } 36 { return $WCST_ } 37 { return $WCSU_ } 38 { return $WCSV_ } 39 { return $WCSW_ } 40 { return $WCSX_ } 41 { return $WCSY_ } 42 { return $WCSZ_ } 43 { set yylval $yytext; return $INT_ } 44 - 45 { set yylval $yytext; return $REAL_ } 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 ######