summaryrefslogtreecommitdiffstats
path: root/ds9/parsers/arrayparser.tac
blob: 8676d43feda87a8417514214c5c0167b1c0f0b7c (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
%{
%}

#include string.tin

%start command

%token MASK_
%token NEW_
%token RGB_

%%

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

array : opts {ArrayCmdLoad {} $1}
 | opts STRING_ {ArrayCmdLoad $2 $1}
# backward compatibility
 | RGB_ STRING_ {RGBArrayCmdLoad $2}
 | NEW_ RGB_ STRING_ {CreateRGBFrame; RGBArrayCmdLoad $3}
 ;

opts :
 | NEW_ {CreateFrame; set _ {}}
 | MASK_ {set _ mask}
 ;

%%

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

     ParserError $msg $yycnt $yy_current_buffer $index_
}