Author: bernhard
Date: Wed Apr  2 11:35:55 2008
New Revision: 26705

Modified:
   trunk/languages/hq9plus/src/parser/grammar.pg
   trunk/languages/hq9plus/t/basic.t

Log:
[HQ9+]
Fix whitespace handling. Whitspace is not required between commands.


Modified: trunk/languages/hq9plus/src/parser/grammar.pg
==============================================================================
--- trunk/languages/hq9plus/src/parser/grammar.pg       (original)
+++ trunk/languages/hq9plus/src/parser/grammar.pg       Wed Apr  2 11:35:55 2008
@@ -9,31 +9,31 @@
 
 grammar HQ9plus::Grammar is PCT::Grammar;
 
-rule TOP {
+token TOP {
     <statement>*
     [ $ || <panic: Syntax error> ]
     {*}
 }
 
-rule statement {
+token statement {
     | <hello>                      {*}   #= hello
     | <quine>                      {*}   #= quine
     | <nintynine_bottles_of_beer>  {*}   #= nintynine_bottles_of_beer
     | <plus>                       {*}   #= plus
 }
 
-rule hello {
-      'H' {*}
+token hello {
+      'H' \s* {*}
 }
 
-rule quine {
-      'Q' {*}
+token quine {
+      'Q' \s* {*}
 }
 
-rule nintynine_bottles_of_beer {
-      '9' {*}
+token nintynine_bottles_of_beer {
+      '9' \s* {*}
 }
 
-rule plus {
-      '+' {*}
+token plus {
+      '+' \s* {*}
 }

Modified: trunk/languages/hq9plus/t/basic.t
==============================================================================
--- trunk/languages/hq9plus/t/basic.t   (original)
+++ trunk/languages/hq9plus/t/basic.t   Wed Apr  2 11:35:55 2008
@@ -528,7 +528,7 @@
 language_output_is( 'hq9plus', $code, $hello x 2, "code: $code" );
 
 $code = 'HHH';
-language_output_is( 'hq9plus', $code, $hello x length($code), "code: $code", 
todo => 'ws handling' );
+language_output_is( 'hq9plus', $code, $hello x length($code), "code: $code" );
 
 $code = 'Q';
 language_output_is( 'hq9plus', $code, $code, "code: $code" );
@@ -537,7 +537,7 @@
 language_output_is( 'hq9plus', $code, $code x 2, "code: $code" );
 
 $code = 'QQQ';
-language_output_is( 'hq9plus', $code, $code x length($code), "code: $code", 
todo => 'ws handling' );
+language_output_is( 'hq9plus', $code, $code x length($code), "code: $code" );
 
 $code = '9';
 language_output_is( 'hq9plus', $code, $song_text, "code: $code" );
@@ -546,7 +546,7 @@
 language_output_is( 'hq9plus', $code, $song_text x 2, "code: $code" );
 
 $code = '999';
-language_output_is( 'hq9plus', $code, $song_text x length($code), "code: 
$code", todo => 'ws handling' );
+language_output_is( 'hq9plus', $code, $song_text x length($code), "code: 
$code" );
 
 $code = '+';
 language_output_is( 'hq9plus', $code, '', "code: $code" );
@@ -555,10 +555,10 @@
 language_output_is( 'hq9plus', $code, '' x 2, "code: $code" );
 
 $code = '+++++++++++++++++++';
-language_output_is( 'hq9plus', $code, '', "code: $code", todo => 'ws handling' 
);
+language_output_is( 'hq9plus', $code, '', "code: $code" );
 
 $code = 'HQ9+';
-language_output_is( 'hq9plus', $code, $hello . $code . $song_text, "code: 
$code", todo => 'ws handling' );
+language_output_is( 'hq9plus', $code, $hello . $code . $song_text, "code: 
$code" );
 
 # Local Variables:
 #   mode: cperl

Reply via email to