--- trunk/lib/Frey/Introspect.pm 2008/07/15 18:06:27 137 +++ trunk/lib/Frey/Introspect.pm 2008/07/17 19:11:01 160 @@ -138,6 +138,8 @@ sub html { my ( $self, $request ) = @_; + $self->add_head( 'static/introspect.css' ); + while (1) { my ( $meta, $is_role ) = $self->load_package; @@ -153,7 +155,7 @@ my $attr = $meta->get_attribute($_); my ( $before, $title, $after ) = ( '', '', '' ); ( $before, $title, $after ) = ( '', ' title="required"', '' ) if $attr->is_required; - qq|$before$_$after| + qq|$before$_$after| } sort $meta->get_attribute_list } @@ -171,11 +173,7 @@ Frey::ClassBrowser->new->markup . qq||; - $self->add_css( 'static/introspect.css' ); - - warn "## css = ",dump( $self->css ); - - my ( $superclasses, $roles ) = ( '', 'Role' ); + my ( $superclasses, $roles ) = ( 'Role', '' ); if ( ! $is_role ) { if ( $meta->superclasses ) { $superclasses = 'Superclasses: ' . @@ -185,11 +183,15 @@ $meta->superclasses ); } + } - if ( $meta->can('roles') ) { - $roles = join(', ', map { my $r = $_->name; qq|$r| } @{ $meta->roles } ); - $roles = " with roles: $roles" if $roles; - } + if ( $meta->can('roles') ) { + $roles = join(', ', + grep { ! m/\Q$package\E/ } # skip me + map { my $r = $_->name; qq|$r| } + $meta->calculate_all_roles + ); + $roles = " with roles: $roles" if $roles; } my $pod = Frey::Pod->new( class => $package )->markup;