Paste Search Dynamic
Recent pastes
grammar Rewrite2
  1.                    #!/usr/bin/perl6
  2.  
  3.                     grammar Rewrite2
  4.                     {
  5.                         rule  TOP      {  <WFE>                           }
  6.                         rule  WFE      {  <OPR>['('<WFE>')']*             }
  7.                         rule  OPR      {  <IDENT>                         }      
  8.                         rule  IDENT    {  <:alpha>w*                     }  
  9.                     }
  10.  
  11.  
  12.                     class RewriteAction2 {
  13.  
  14.                         method TOP($/) {
  15.                             make $<WFE>.made;
  16.                         }
  17.  
  18.                         method WFE($/) {
  19.                            make $/.values[0].made;
  20.                         }
  21.  
  22.                         method OPR($/) {
  23.                            make $<IDENT>.made;
  24.                         }
  25.  
  26.                         method IDENT($/) {  
  27.                            make $/.Str;
  28.                            say $/.made;
  29.                        }
  30.                     }
  31.  
  32.  
  33.  
  34.                    my $match2 = Rewrite2.parse(
  35.             #          'ident8(ident6666(id7)(id2))(iden92)',
  36.             #          'ident8'ident8(iden92]',iden92]',
  37.                        'ident8(iden92)',
  38.             #          'iden92',
  39.                        actions => RewriteAction2.new,
  40.                    );
  41.  
  42.                    say $match2;
  43.                    say $match2.made;
  44.  
  45.  
  46.             #      my $v55= $match2.Str.perl;
  47.             #      my $v55= $match2.Str;
  48.  
  49.  
  50.             #      say ' ';
  51.             #      say $v55;
  52.  
Parsed in 0.006 seconds