[svn:parrot] r36367 - trunk/languages/pod/src/parser

kjs at svn.parrot.org kjs at svn.parrot.org
Wed Feb 4 23:02:04 UTC 2009


Author: kjs
Date: Wed Feb  4 23:02:03 2009
New Revision: 36367
URL: https://trac.parrot.org/parrot/changeset/36367

Log:
[pod] =over, =item, =back. Again, needs more work.

Modified:
   trunk/languages/pod/src/parser/actions.pm
   trunk/languages/pod/src/parser/grammar.pg

Modified: trunk/languages/pod/src/parser/actions.pm
==============================================================================
--- trunk/languages/pod/src/parser/actions.pm	Wed Feb  4 22:54:31 2009	(r36366)
+++ trunk/languages/pod/src/parser/actions.pm	Wed Feb  4 23:02:03 2009	(r36367)
@@ -68,7 +68,13 @@
     make $list;
 }
 
-method item($/) {
+method back_directive($/) {
+    ## XXX thsi should probably be the List object
+    ## that's created in =over..
+    make Pod::DocTree::List.new();
+}
+
+method item_directive($/) {
     make Pod::DocTree::Item.new();
 }
 

Modified: trunk/languages/pod/src/parser/grammar.pg
==============================================================================
--- trunk/languages/pod/src/parser/grammar.pg	Wed Feb  4 22:54:31 2009	(r36366)
+++ trunk/languages/pod/src/parser/grammar.pg	Wed Feb  4 23:02:03 2009	(r36367)
@@ -15,13 +15,12 @@
     [ <skipped>
     | <pod_section>
     ]*
-    [ $ || <panic: 'Pod syntax error'> ]
+    [ $ || <.panic: 'Pod syntax error'> ]
     {*}
 }
 
 rule skipped {
     ^^ <![=]> \N*
-
 }
 
 rule pod_section {
@@ -109,22 +108,25 @@
 token back_directive {
     ^^ '=back' \n
     <.blank_line>
-
+   {*}
 }
 
 token item_directive {
     ^^
     '=item'
-    [ <.pod_ws>
-        [ '*'
-        | <digit>* '.'?
-        ]
-    ]?
+    [ <.pod_ws> <bullet> ]?
     \n
     <.blank_line>
     {*}
 }
 
+## it seems that "named" items is not possible.. forgotten?
+token bullet {
+    [ $<bullet>='*'
+    | $<ordered>=<digit>* '.'?
+    ]
+}
+
 token encoding_directive {
     ^^
     '=encoding'


More information about the parrot-commits mailing list