summaryrefslogtreecommitdiffstats
path: root/ds9/parsers
diff options
context:
space:
mode:
authorWilliam Joye <wjoye@cfa.harvard.edu>2018-06-20 17:31:39 (GMT)
committerWilliam Joye <wjoye@cfa.harvard.edu>2018-06-20 17:31:39 (GMT)
commit08ce7322f91b7ce101b1fdec438db11a33140100 (patch)
tree9d81ae637298a73a91f09a57b345bad877ca2f52 /ds9/parsers
parentd8a46fb55ae9ce363612f91a453413533bbfa307 (diff)
downloadblt-08ce7322f91b7ce101b1fdec438db11a33140100.zip
blt-08ce7322f91b7ce101b1fdec438db11a33140100.tar.gz
blt-08ce7322f91b7ce101b1fdec438db11a33140100.tar.bz2
add ds9 analysis send parser
Diffstat (limited to 'ds9/parsers')
-rw-r--r--ds9/parsers/analysissendlex.fcl23
-rw-r--r--ds9/parsers/analysissendparser.tac42
2 files changed, 65 insertions, 0 deletions
diff --git a/ds9/parsers/analysissendlex.fcl b/ds9/parsers/analysissendlex.fcl
new file mode 100644
index 0000000..448dd6f
--- /dev/null
+++ b/ds9/parsers/analysissendlex.fcl
@@ -0,0 +1,23 @@
+#tab analysissendparser.tab.tcl
+
+%{
+%}
+
+#include defs.fin
+
+%%
+
+entry {return $ENTRY_}
+message {return $MESSAGE_}
+mode {return $MODE_}
+task {return $TASK_}
+lock {return $LOCK_}
+
+ok {return $OK_}
+okcancel {return $OKCANCEL_}
+yesno {return $YESNO_}
+
+#include string.fin
+#include ws.fin
+
+%%
diff --git a/ds9/parsers/analysissendparser.tac b/ds9/parsers/analysissendparser.tac
new file mode 100644
index 0000000..d31871d
--- /dev/null
+++ b/ds9/parsers/analysissendparser.tac
@@ -0,0 +1,42 @@
+%{
+%}
+
+#include string.tin
+
+%token ENTRY_
+%token MESSAGE_
+%token MODE_
+%token TASK_
+%token LOCK_
+
+%token OK_
+%token OKCANCEL_
+%token YESNO_
+
+%start analysissend
+
+%%
+
+analysissend : {AnalysisSendCmd}
+ | ENTRY_ STRING_ {AnalysisSendCmdEntry $2}
+ | MESSAGE_ type STRING_ {AnalysisSendCmdMessage $2 $3}
+ | MODE_ {ProcessSendCmdGet ime task}
+ | TASK_ {AnalysisSendCmdTask}
+ | LOCK_ {ProcessSendCmdGet ime lock}
+ ;
+
+type : {set _ ok}
+ | OK_ {set _ ok}
+ | OKCANCEL_ {set _ okcancel}
+ | YESNO_ {set _ yesno}
+ ;
+
+%%
+
+proc analysissend::yyerror {msg} {
+ variable yycnt
+ variable yy_current_buffer
+ variable index_
+
+ ParserError $msg $yycnt $yy_current_buffer $index_
+}