X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Focaml%2Fmathql_interpreter%2FmQueryTParser.mly;h=da70610655a131396ce98a10405b8cb8308d8bfd;hb=9cbce40d56958c466459b028cf250441ec29c9fe;hp=1025cf3167b1e578e4eb7b897de6b0b293fe9d2f;hpb=786284e9dfb25a31aad2161d59cdc5f36657e94a;p=helm.git diff --git a/helm/ocaml/mathql_interpreter/mQueryTParser.mly b/helm/ocaml/mathql_interpreter/mQueryTParser.mly index 1025cf316..da7061065 100644 --- a/helm/ocaml/mathql_interpreter/mQueryTParser.mly +++ b/helm/ocaml/mathql_interpreter/mQueryTParser.mly @@ -73,12 +73,14 @@ let t (x, y, z) = z %} %token ID STR - %token LB RB SL IS LC RC CM SC LP RP AT PC FS DQ EOF + %token LB RB SL IS LC RC CM SC LP RP AT DL FS DQ EOF %token ADD ALIGN AND AS ATTR BE BUT COUNT DIFF DISTR ELSE EMPTY EQ EX %token FALSE FOR FROM IF IN INF INTER INV ISF IST KEEP LE LET LOG LT - %token MAIN MATCH MEET NOT OF OR PAT PROJ PROP SELECT SOURCE STAT SUB - %token SUP SUPER THEN TRUE UNION WHERE XOR - %nonassoc IN SUP INF ELSE LOG STAT KEEP + %token MAIN MATCH MEET NOT OF OR PAT PROJ PROP SELECT SEQ SOURCE STAT + %token SUB SUP SUPER THEN TRUE UNION WHERE XOR + %nonassoc SOURCE + %right IN SEQ + %nonassoc SUP INF ELSE LOG STAT KEEP %left DIFF %left UNION %left INTER @@ -99,7 +101,7 @@ | STR qstr { $1 ^ $2 } ; svar: - | PC ID { $2 } + | DL ID { $2 } ; avar: | AT ID { $2 } @@ -231,7 +233,7 @@ | ALIGN set_exp IN set_exp { make_fun ["align"] [] [$2; $4] } | EMPTY - { make_fun ["false"] [] [] } + { make_fun ["empty"] [] [] } | svar { M.SVar $1 } | avar @@ -260,6 +262,8 @@ { make_fun $1 [] $3 } | path LC RC { make_fun $1 [] [] } + | set_exp SEQ set_exp + { make_fun ["seq"] [] [$1; $3] } | set_exp DIFF set_exp { make_fun ["diff"] [] [$1; $3] } | set_exp UNION set_exp