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/\"$//;