Author: kjs
Date: Fri Apr 6 11:29:40 2007
New Revision: 18014
Modified:
trunk/compilers/pirc/src/pirparser.c
Log:
compilers/pirc:
* fix documentation of parser.
Modified: trunk/compilers/pirc/src/pirparser.c
==============================================================================
--- trunk/compilers/pirc/src/pirparser.c (original)
+++ trunk/compilers/pirc/src/pirparser.c Fri Apr 6 11:29:40 2007
@@ -43,15 +43,10 @@
=item + unify '.sym' and '.local'. Just allow one, and think of something else
for local labels in macros.
-=item + Decide on dot-prefix: either .Integer or Integer, but not both.
-
-=item + same for strings: .Integer, Integer or "Integer"?
-
=back
=back
-
=cut
*/
@@ -67,7 +62,7 @@
/*
-=head1 INTERNALS
+=head1 PARSER INTERNALS
The parser_state structure has the following fields:
@@ -359,6 +354,8 @@
=head2 Grammar rules
+=head3 Expressions
+
=over 4
=item *
@@ -646,6 +643,12 @@
/*
+=back
+
+=head3 Statements
+
+=over 4
+
=item *
methodcall -> INVOCANT_IDENT method arguments
@@ -1224,7 +1227,9 @@
=item *
- arg_flags -> ':flat' | ':named' [ '(' STRINGC ')' ]
+ arg_flags -> { arg_flag }
+
+ arg_flag -> ':flat' | ':named' [ '(' STRINGC ')' ]
=cut
@@ -1255,11 +1260,13 @@
=item *
- param_flags -> ':slurpy'
- | ':named'['(' STRINGC ')']
- | ':unique_reg'
- | ':optional'
- | ':opt_flag'
+ param_flags -> { param_flag }
+
+ param_flag -> ':slurpy'
+ | ':named'['(' STRINGC ')']
+ | ':unique_reg'
+ | ':optional'
+ | ':opt_flag'
=cut
@@ -1476,7 +1483,7 @@
target_statement -> target ( '=' assignment
| augmented_op expression
| keylist '=' expression
- | '->' (STRINGC|IDENTIFIER) arguments
+ | '->' method arguments
| arguments
)
'\n'
@@ -1834,6 +1841,12 @@
/*
+=back
+
+=head3 Compilation Units
+
+=over 4
+
=item *
global_definition -> '.global' IDENTIFIER