X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=eg%2Fclass_browser.pl;h=f98fb394814390940a134dfcb075413b4c1621b8;hb=366abb63a74af7c8a6eb6390f30d60a6bdfca414;hp=095234d74719c8d27015bd91d62a98279bb65d9c;hpb=38bf2a2585e26a47c919fd4c286b7716acb51c00;p=gitmo%2FMoose.git diff --git a/eg/class_browser.pl b/eg/class_browser.pl index 095234d..f98fb39 100644 --- a/eg/class_browser.pl +++ b/eg/class_browser.pl @@ -21,8 +21,8 @@ if ($stand_alone) { Class::MOP::Browser::Server; our @ISA = qw(HTTP::Server::Simple::CGI); sub handle_request { ::process_template() } - } - Class::MOP::Browser::Server->new()->run(); + } + Class::MOP::Browser::Server->new()->run(); } else { print CGI::header(); @@ -41,16 +41,16 @@ else { 'deparse_method' => \&::deparse_method, 'deparse_item' => \&::deparse_item, } - ) or warn Template->error; + ) or warn Template->error; } } -sub get_all_metaclasses { - sort { $a->name cmp $b->name } Class::MOP::get_all_metaclass_instances() +sub get_all_metaclasses { + sort { $a->name cmp $b->name } Class::MOP::get_all_metaclass_instances() } - -sub get_metaclass_by_name { - Class::MOP::get_metaclass_by_name(@_); + +sub get_metaclass_by_name { + Class::MOP::get_metaclass_by_name(@_); } sub deparse_method { @@ -65,9 +65,9 @@ sub deparse_item { return $item unless ref $item; local $Data::Dumper::Deparse = 1; local $Data::Dumper::Indent = 1; - my $dumped = Dumper $item; + my $dumped = Dumper $item; $dumped =~ s/^\$VAR1\s=\s//; - $dumped =~ s/\;$//; + $dumped =~ s/\;$//; return _clean_deparse_code($dumped); } @@ -76,11 +76,11 @@ sub _clean_deparse_code { my @cleaned; foreach (@body) { next if /^\s+use/; - next if /^\s+BEGIN/; - next if /^\s+package/; + next if /^\s+BEGIN/; + next if /^\s+package/; push @cleaned => $_; - } - return (join "\n" => @cleaned); + } + return (join "\n" => @cleaned); } 1; @@ -116,52 +116,52 @@ pre { border: 1px dotted green; } -A { +A { font-family: arial; - font-size: 12px; + font-size: 12px; color: black; text-decoration: none; } A:hover { - text-decoration: underline; + text-decoration: underline; } - -td.lightblue { - background-color: #99BBFF; - border-right: 1px solid #336699; - border-bottom: 1px solid #336699; - border-top: 1px solid #BBDDFF; - border-left: 1px solid #BBDDFF; + +td.lightblue { + background-color: #99BBFF; + border-right: 1px solid #336699; + border-bottom: 1px solid #336699; + border-top: 1px solid #BBDDFF; + border-left: 1px solid #BBDDFF; } -td.grey { - background-color: #CCCCCC; - border-right: 1px solid #888888; - border-bottom: 1px solid #888888; - border-top: 1px solid #DDDDDD; - border-left: 1px solid #DDDDDD; +td.grey { + background-color: #CCCCCC; + border-right: 1px solid #888888; + border-bottom: 1px solid #888888; + border-top: 1px solid #DDDDDD; + border-left: 1px solid #DDDDDD; } -td.manila { +td.manila { background-color: #FFDD99; - border-right: 2px solid #CC9933; - border-bottom: 2px solid #CC9933; - border-top: 2px solid #FFFFBB; - border-left: 2px solid #FFFFBB; + border-right: 2px solid #CC9933; + border-bottom: 2px solid #CC9933; + border-top: 2px solid #FFFFBB; + border-left: 2px solid #FFFFBB; } -td.darkgreen { - background-color: #33CC33; - border-right: 1px solid #009900; - border-bottom: 1px solid #009900; - color: #CCFFCC; +td.darkgreen { + background-color: #33CC33; + border-right: 1px solid #009900; + border-bottom: 1px solid #009900; + color: #CCFFCC; } -td.lightgreen { - background-color: #AAFFAA; - border-right: 1px solid #33FF33; - border-bottom: 1px solid #33FF33; +td.lightgreen { + background-color: #AAFFAA; + border-right: 1px solid #33FF33; + border-bottom: 1px solid #33FF33; } @@ -170,7 +170,7 @@ td.lightgreen {

Class::MOP Browser

- + [% END %]
[% FOREACH metaclass IN get_all_metaclasses() %] @@ -183,10 +183,10 @@ td.lightgreen { [% END %]
- + [% FOREACH area_name IN [ 'attributes', 'methods', 'superclasses' ] %] [% IF q.param('class') %] - [% IF area == area_name %] + [% IF area == area_name %] [% ELSE %] @@ -200,13 +200,13 @@ td.lightgreen { @@ -253,31 +253,31 @@ td.lightgreen { [% FOREACH method IN meta.get_method_list.sort %] [% IF q.param('method') == method %] - + [% ELSE %] [% END %] - [% END %] + [% END %] [% END %] [% IF area == 'attributes' %] [% FOREACH attr IN meta.get_attribute_list.sort %] [% IF q.param('attr') == attr %] - + [% ELSE %] [% END %] - [% END %] - [% END %] + [% END %] + [% END %] [% IF area == 'superclasses' %] [% FOREACH super IN meta.superclasses.sort %] - [% END %] - [% END %] + [% END %] + [% END %]
[% area_name %][% area_name %] - - - - + + + + [% IF q.param('class') && area == 'attributes' && q.param('attr') %] - [% + [% meta = get_metaclass_by_name(q.param('class')) attr = meta.get_attribute(q.param('attr')) %] @@ -221,7 +221,7 @@ td.lightgreen { [% ELSIF q.param('class') && area == 'methods' && q.param('method') %] - [% + [% meta = get_metaclass_by_name(q.param('class')) method = meta.get_method(q.param('method')) %] @@ -235,7 +235,7 @@ td.lightgreen { - + [% END %]
body
[% deparse_method(method) %]
[% method %][% method %][% method %]
[% attr %][% attr %][% attr %]
[% super %]