/[Frey]/trunk/lib/Frey/Introspect.pm
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /trunk/lib/Frey/Introspect.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 602 by dpavlin, Fri Nov 28 19:19:46 2008 UTC revision 717 by dpavlin, Thu Dec 4 17:55:27 2008 UTC
# Line 11  use List::Util; Line 11  use List::Util;
11  use PPI;  use PPI;
12  use PPI::HTML;  use PPI::HTML;
13    
14    use Frey::Pod;
15    
16  use lib 'lib';  use lib 'lib';
17    
18  extends 'Frey::PPI';  extends 'Frey::PPI';
# Line 211  sub as_markup { Line 213  sub as_markup {
213          }          }
214          $table .= qq|</table>|;          $table .= qq|</table>|;
215    
         my $pod = Frey::Pod->new( class => $class )->as_markup;  
         $pod = $pod->{body} if ref($pod);  
   
216          my $path = $self->class_path( $class );          my $path = $self->class_path( $class );
217    
218            my $pod = Frey::Pod->new( class => $class, request_url => $self->request_url )->as_markup;
219            return $pod if $path =~ m{\.pod};
220    
221          my $Document = PPI::Document->new( $path );          my $Document = PPI::Document->new( $path );
222    
223          # Create a reusable syntax highlighter          # Create a reusable syntax highlighter
# Line 239  sub as_markup { Line 242  sub as_markup {
242          my $runnable = join("\n",          my $runnable = join("\n",
243                  map {                  map {
244                          $introspect->{runnable}->{$_}++;                          $introspect->{runnable}->{$_}++;
245                          qq|<a target="$class" href="/$class/$_">$_</a>|                          my $short = $_;
246                            $short =~ s{_as_(?:markup|data|sponge)$}{};
247                            qq|<a target="$class" href="/$class/$_" title="/$class/$_">$short</a>|
248                  } $self->class_runnable( $class )                  } $self->class_runnable( $class )
249          );          );
250          $runnable = " runnable: $runnable" if $runnable;          $runnable = "<br>run: $runnable" if $runnable;
251    
252          $self->store( $introspect_path, $introspect );          $self->store( $introspect_path, $introspect );
253    
254          $self->title( $class );          $self->title( $class );
255    
256          my $has_tests = '';          my $has_tests = '';
257          if ( my @tests = $self->has_tests ) {          my @tests = grep { defined $_ } $self->has_tests;
258            if ( @tests ) {
259                  $has_tests =                  $has_tests =
260                  '<br/>test' . ( $#tests > 0 ? 's' : '' ) . ': ' .                        '<br/>test' . ( $#tests > 0 ? 's' : '' ) . ': ' .      
261                  join("\n", map {                  join("\n", map {
# Line 260  sub as_markup { Line 266  sub as_markup {
266          return join("\n",          return join("\n",
267                  qq|<h1>$class</h1>|,                  qq|<h1>$class</h1>|,
268                  qq|<div class="frey-introspect">$superclasses\n$roles\n$runnable\n|,                  qq|<div class="frey-introspect">$superclasses\n$roles\n$runnable\n|,
269                    $has_tests,
270                  $pod    ? qq|<a class="frey-skip" href="#___top" title="Skip to POD"    >pod</a>|    : '',                  $pod    ? qq|<a class="frey-skip" href="#___top" title="Skip to POD"    >pod</a>|    : '',
271                  $source ? qq|<a class="frey-skip" href="#source" title="Skip to source" >source</a>| : '',                  $source ? qq|<a class="frey-skip" href="#source" title="Skip to source" >source</a>| : '',
                 $has_tests,  
272                  qq|$table\n$pod\n</div>\n|,                  qq|$table\n$pod\n</div>\n|,
273                  qq|<h1>Source</h1><a name="source"></a><div class="frey-source">$source</div>|,                  qq|<h1>Source</h1><a name="source"></a><div class="frey-source">$source</div>|,
274          );          );

Legend:
Removed from v.602  
changed lines
  Added in v.717

  ViewVC Help
Powered by ViewVC 1.1.26