Author: bernhard
Date: Sun Apr 30 07:02:48 2006
New Revision: 12463

Modified:
   trunk/languages/regex/lib/Regex/CodeGen/Re.pm
   trunk/languages/regex/lib/Regex/Driver.pm
   trunk/languages/regex/lib/Regex/Parse/P6C.pm

Log:
No longer use Perl PMCs in languages/regex.


Modified: trunk/languages/regex/lib/Regex/CodeGen/Re.pm
==============================================================================
--- trunk/languages/regex/lib/Regex/CodeGen/Re.pm       (original)
+++ trunk/languages/regex/lib/Regex/CodeGen/Re.pm       Sun Apr 30 07:02:48 2006
@@ -1,3 +1,5 @@
+# $Id$
+
 package Regex::CodeGen::Re;
 use Regex::RegexOps ();
 use base 'Regex::CodeGen';

Modified: trunk/languages/regex/lib/Regex/Driver.pm
==============================================================================
--- trunk/languages/regex/lib/Regex/Driver.pm   (original)
+++ trunk/languages/regex/lib/Regex/Driver.pm   Sun Apr 30 07:02:48 2006
@@ -113,7 +113,7 @@
     return 1 unless $self->{emit_main};
 
     print $fh <<'END';
-.sub _main :main
+.sub main :main
     .param pmc args
     .local string input_string
     input_string = args[1]
@@ -124,7 +124,7 @@
     .local pmc result
     .local int matched
     .local pmc stack
-    stack = new PerlArray
+    stack = new .ResizablePMCArray
     result = _default(1, input_string, 0, stack)
     matched = result["!RESULT"]
     if matched goto printResults

Modified: trunk/languages/regex/lib/Regex/Parse/P6C.pm
==============================================================================
--- trunk/languages/regex/lib/Regex/Parse/P6C.pm        (original)
+++ trunk/languages/regex/lib/Regex/Parse/P6C.pm        Sun Apr 30 07:02:48 2006
@@ -1,3 +1,5 @@
+# $Id$
+
 package Regex::Parse::P6C;
 
 use strict;
@@ -59,7 +61,7 @@
     } elsif (ref($atom) eq 'ARRAY') {
         # Codeblock
         $R = op('external' => [ 'code', [ $atom, $ctx ] ]);
-    } elsif (UNIVERSAL::can($atom, 'type') && $atom->type eq 'PerlArray') {
+    } elsif (UNIVERSAL::can($atom, 'type') && $atom->type eq 
'ResizablePMCArray') {
         $R = op('external' => [ 'array', [ $atom, $ctx ] ]);
     } elsif ($atom->isa('P6C::sv_literal') && is_string($atom->type)) {
         $R = $self->convert_sv_literal($atom, $ctx);
@@ -116,7 +118,7 @@
 sub convert_sv_literal {
     use Data::Dumper;
     my ($self, $tree, $ctx) = @_;
-    die Dumper($tree) unless $tree->type eq 'PerlString';
+    die Dumper($tree) unless $tree->type eq 'String';
     my $literal = $tree->lval;
     die Dumper($tree) unless $literal =~ s/^\"//;
     die Dumper($tree) unless $literal =~ s/\"$//;

Reply via email to