Author: mriou
Date: Mon Jan 19 14:44:08 2009
New Revision: 735860

URL: http://svn.apache.org/viewvc?rev=735860&view=rev
Log:
A few grammar improvements, notably around the use of semi with 
invoke/receive/request statements.

Modified:
    ode/sandbox/simpel/src/main/antlr/org/apache/ode/simpel/antlr/SimPEL.g

Modified: ode/sandbox/simpel/src/main/antlr/org/apache/ode/simpel/antlr/SimPEL.g
URL: 
http://svn.apache.org/viewvc/ode/sandbox/simpel/src/main/antlr/org/apache/ode/simpel/antlr/SimPEL.g?rev=735860&r1=735859&r2=735860&view=diff
==============================================================================
--- ode/sandbox/simpel/src/main/antlr/org/apache/ode/simpel/antlr/SimPEL.g 
(original)
+++ ode/sandbox/simpel/src/main/antlr/org/apache/ode/simpel/antlr/SimPEL.g Mon 
Jan 19 14:44:08 2009
@@ -96,7 +96,7 @@
 
 proc_stmt
        :       pick | flow | if_ex | while_ex | until_ex | foreach | forall | 
try_ex | scope_ex | with_ex
-               | receive | invoke | request | ((reply | assign | throw_ex | 
wait_ex | exit | signal | join
+               | receive | request | invoke | ((reply | assign | throw_ex | 
wait_ex | exit | signal | join
                | variables | partner_link) SEMI!);
 
 block  :       '{' proc_stmt+ '}' -> ^(SEQUENCE proc_stmt+);
@@ -144,31 +144,30 @@
 
 invoke
 options {backtrack=true;}
-        :      invoke_base SEMI -> ^(INVOKE invoke_base)
-            | invoke_base param_block -> ^(INVOKE invoke_base) param_block;
+        :      invoke_base param_block -> ^(INVOKE invoke_base) param_block;
 invoke_base
         :      'invoke' '(' p=ID ',' o=ID (',' in=ID)? ')' -> ^($p $o $in?);
 
 receive        
 options {backtrack=true;}
-        :      receive_base SEMI -> ^(RECEIVE receive_base) |
-            receive_base param_block -> ^(RECEIVE receive_base) param_block;
+        :      receive_base param_block -> ^(RECEIVE receive_base) param_block;
 receive_base
-           :   'receive' '(' p=ID (',' o=ID (',' correlation)? )? ')' -> ^($p 
$o? correlation?);
-
-reply  :       'reply' '(' ID (',' ID (',' ID)?)? ')' -> ^(REPLY ID (ID ID?)?);
+             : 'receive' '(' p=ID (',' o=ID (',' correlation)? )? ')' -> ^($p 
$o? correlation?);
 
 request
 options {backtrack=true;}
-        :      request_base SEMI -> ^(REQUEST request_base)
-            | request_base param_block -> ^(REQUEST request_base) param_block;
+        :      request_base param_block -> ^(REQUEST request_base) param_block;
 request_base
         :      'request' '(' expr (',' meth=STRING (',' msg=ID)?)? ')' -> 
^(REQ_BASE expr $meth? $msg?);
 
+reply    :     'reply' '(' ID (',' ID (',' ID)?)? ')' -> ^(REPLY ID (ID ID?)?);
+
 assign :       path_expr '=' rvalue -> ^(ASSIGN path_expr rvalue);
 rvalue
            :   receive_base -> ^(RECEIVE receive_base)
-                   | invoke | request | resource | expr | xml_literal;
+                   | invoke_base -> ^(INVOKE invoke_base)
+        | request_base -> ^(REQUEST request_base)
+        | resource | expr | xml_literal;
        
 throw_ex:      'throw' '('? ns_id ')'? -> ^(THROW ns_id);
 


Reply via email to