summaryrefslogtreecommitdiffstats
path: root/ds9/parsers/minmaxparser.tac
blob: b5be097cfc23f44d832eb79e269da185addd9801 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
%{
%}

#include numeric.tin
#include string.tin

%start command

%token AUTO_
%token DATAMIN_
%token IRAFMIN_
%token INTERVAL_
%token MODE_
%token SAMPLE_
%token SCAN_

%%

#include numeric.trl

command : minmax 
 | minmax {yyclearin; YYACCEPT} STRING_
 ;

minmax : {ProcessCmdSet scale mode minmax ChangeScaleMode}
 | mode {ProcessCmdSet minmax mode $1 ChangeMinMax}
 | MODE_ mode {ProcessCmdSet minmax mode $2 ChangeMinMax}
 | INTERVAL_ INT_ {ProcessCmdSet minmax sample $2 ChangeMinMax}
 ;

mode : SCAN_ {set _ scan}
 | SAMPLE_ {set _ sample}
 | DATAMIN_ {set _ datamin}
 | IRAFMIN_ {set _ irafmin}
# backward compatibility
 | AUTO_ {set _ scan}
 ;

%%

proc minmax::yyerror {msg} {
     variable yycnt
     variable yy_current_buffer
     variable index_

     ParserError $msg $yycnt $yy_current_buffer $index_
}