From b134d5b65b4e26215f871b3c94ad8397af3d00a3 Mon Sep 17 00:00:00 2001 From: matthewt Date: Mon, 30 Jun 2008 19:49:49 +0000 Subject: hopefully now handles overrides and role --- script/rclass_back_to_moose.pl | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'script') diff --git a/script/rclass_back_to_moose.pl b/script/rclass_back_to_moose.pl index 68dbd57..0b5321f 100644 --- a/script/rclass_back_to_moose.pl +++ b/script/rclass_back_to_moose.pl @@ -16,9 +16,9 @@ sub with_file (&) { $data > io($fname); } -sub with_class_block (&) { +sub with_class_or_role_block (&) { my ($code) = @_; - $_ =~ s{^class\s*(.*?)which\s*{(.*?)^};} + $_ =~ s{^(?:class|role)\s*(.*?)which\s*{(.*?)^};} { local *_ = { header => $1, body => $2 }; $code->(); @@ -52,6 +52,7 @@ sub filtered_body { s/^ //g; s/implements *(\S+).*?{/"sub ${\sq $1} {"/ge; s/^does/with/g; + s/^overrides/override/g; $_; } @@ -60,7 +61,7 @@ sub tail { "__PACKAGE__->meta->make_immutable;\n"; } for ("lib/Reaction/InterfaceModel/Object.pm", "lib/Reaction/InterfaceModel/Action/DBIC/Result.pm") { with_file { - with_class_block { + with_class_or_role_block { return top.build_extends.filtered_body.tail; }; }; -- cgit v1.2.3-54-g00ecf