#!/usr/local/bin/perl
@files = @ARGV;
$^I = ".bak";
# Converts Text->new($parent) into $parent->Text()
# Converts -variable => $fred into -variable => \$fred
foreach $file (@files)
{
print STDERR "$file:\n";
@ARGV = ($file);
while (<>)
{
if (/[A-Z][a-z]+->new/)
{
s/([A-Z][A-Z0-9_a-z]+)->new\(\s*([^),]+)(,\s*)?/$2->$1(/;
print STDERR;
}
if (/\b[A-Z]*VARIABLE\s*=>\s*\$/)
{
s/\b([A-Z]*VARIABLE\s*=>\s*)(\$)/$1\\$2/g;
print STDERR;
}
if (/'-[a-z]*variable'\s*=>\s*\$/)
{
s/('-[a-z]*variable'\s*=>\s*)(\$)/$1\\$2/g;
print STDERR;
}
print;
}
}