/[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 277 by dpavlin, Wed Nov 5 08:20:50 2008 UTC revision 292 by dpavlin, Wed Nov 5 08:21:03 2008 UTC
# Line 77  sub joose { Line 77  sub joose {
77          $out .= "\t\t},\n\t\tmeta: Frey.HTML,          $out .= "\t\t},\n\t\tmeta: Frey.HTML,
78                  classMethods: {                  classMethods: {
79                          renderHTML: function () {                          renderHTML: function () {
80                                  return new Joose.SimpleRequest().getText(\"/Frey-Introspect?class=" . $self->class . "\")                                  return new Joose.SimpleRequest().getText(\"/" . $self->class . "\")
81                          },\n";                          },\n";
82    
83          $out .= "\t\t},\n";          $out .= "\t\t},\n";
# Line 154  sub markup { Line 154  sub markup {
154                          my ( $before, $title, $after ) = ( '', '', '' );                          my ( $before, $title, $after ) = ( '', '', '' );
155                          ( $before, $title, $after ) = ( '<b>', ' title="required"', '</b>' ) if $attr->is_required;                          ( $before, $title, $after ) = ( '<b>', ' title="required"', '</b>' ) if $attr->is_required;
156  warn $attr->dump(3);  warn $attr->dump(3);
157                          foreach my $check ( qw/has_type_constraint has_handles is_weak_ref is_required is_lazy should_coerce should_auto_deref has_trigger has_documentation has_applied_traits/ ) {                          foreach my $check ( qw/has_type_constraint has_handles is_weak_ref is_required is_lazy should_coerce should_auto_deref has_default has_trigger has_documentation has_applied_traits/ ) {
158                                  my $getter;                                  my $getter;
159                                                                    
160                                  $getter = $check;                                  $getter = $check;
# Line 165  warn $attr->dump(3); Line 165  warn $attr->dump(3);
165                                                  $after .= "$check";                                                  $after .= "$check";
166                                          } else {                                          } else {
167                                                  $after .= qq{<span class="frey-popdown">$check};                                                  $after .= qq{<span class="frey-popdown">$check};
168                                                  $after .= '<code>' . $attr->$getter->dump . '</code>' if $getter ne $check;                                                  # we need dump here instead of $attr->$getter->dump because default can return scalar
169                                                    $after .= '<code>' . dump( $attr->$getter ) . '</code>' if $getter ne $check;
170                                                  $after .= '</span>';                                                  $after .= '</span>';
171                                          }                                          }
172                                  }                                  }
173                                  $after .= ' ';                                  $after .= ' ';
174                          }                          }
175                          qq|<td class="a">$before $_</td><td>$after</td>|                          my $type = $attr->has_type_constraint ? $attr->type_constraint->name : '';
176                            qq|<td class="a">$before $_</td><td class="t">$type</td><td>$after</td>|
177                  } sort $meta->get_attribute_list                  } sort $meta->get_attribute_list
178          }          }
179    
180          my $table = qq|<table class="frey-object-browser"><tr><th class="m">Methods</th><th class="a">Attributes</th><th class="p">Properties</th></tr>|;          my $table = qq|<table class="frey-object-browser"><tr><th class="m">Methods</th><th class="a">Attributes</th><th>Type</th><th class="p">Properties</th></tr>|;
181          while ( @methods || @attributes ) {          while ( @methods || @attributes ) {
182                  my ($m,$a) = ( shift @methods, shift @attributes );                  my ($m,$a) = ( shift @methods, shift @attributes );
183                  $m ||= '<td></td>';                  $m ||= '<td></td>';
# Line 191  warn $attr->dump(3); Line 193  warn $attr->dump(3);
193                                  join(', ',                                  join(', ',
194                                          map {                                          map {
195                                                  my $name = $_->meta->name;                                                  my $name = $_->meta->name;
196                                                  qq|<a class="frey-popdown" href="/Frey-Introspect?class=$name">$name<code>| . $_->meta->dump(2) . qq|</code></a>|;                                                  qq|<a class="frey-popdown" href="/$name">$name<code>| . $_->meta->dump(2) . qq|</code></a>|;
197                                          }                                          }
198                                          #grep { $_ ne 'Moose::Object' }                                          #grep { $_ ne 'Moose::Object' }
199                                          $meta->superclasses                                          $meta->superclasses
# Line 204  warn $attr->dump(3); Line 206  warn $attr->dump(3);
206                          grep { ! m/\Q$class\E/ }        # skip me                          grep { ! m/\Q$class\E/ }        # skip me
207                          map {                          map {
208                                  my $name = $_->name;                                  my $name = $_->name;
209                                  qq|<a class="frey-popdown" href="/Frey-Introspect?class=$name">$name<code>| . $name->meta->dump(2) . qq|</code></a>|;                                  qq|<a class="frey-popdown" href="/$name">$name<code>| . $name->meta->dump(2) . qq|</code></a>|;
210                          }                          }
211                          $meta->calculate_all_roles                          $meta->calculate_all_roles
212                  );                  );
# Line 214  warn $attr->dump(3); Line 216  warn $attr->dump(3);
216          my $pod = Frey::Pod->new( class => $class )->markup;          my $pod = Frey::Pod->new( class => $class )->markup;
217    
218          use Frey::Run;          use Frey::Run;
219          my $execute = join("\n", map { qq|<a href="/$_/$class">$_</a>| } grep { $class->can($_) } Frey::Run->execute );          my $execute = join("\n", map { qq|<a href="/$class/$_">$_</a>| } grep { $class->can($_) } Frey::Run->execute );
220          $execute = " execute: $execute" if $execute;          $execute = " execute: $execute" if $execute;
221    
222          my $html = $self->page(          my $html = $self->page(

Legend:
Removed from v.277  
changed lines
  Added in v.292

  ViewVC Help
Powered by ViewVC 1.1.26