dougm 01/03/04 15:38:25 Added: util source_stats.pl Log: utility for gathering some source statistics Revision Changes Path 1.1 modperl-2.0/util/source_stats.pl Index: source_stats.pl =================================================================== use lib qw(lib); use strict; use Apache::FunctionTable (); use Apache::StructureTable (); my %stats; for my $entry (@$Apache::FunctionTable) { unless ($entry->{name} =~ /^(ap|apr)_/) { #print "found alien function $entry->{name}\n"; next; } $stats{functions}->{$1}++; } for my $entry (@$Apache::StructureTable) { my $elts = $entry->{elts}; my $type = $entry->{type}; my $c = $type =~ /^apr_/ ? "apr" : "ap"; @$elts = () if $type =~ /^ap_LINK/; if (@$elts) { $stats{typedef_structs}->{$c}++; $stats{struct_members}->{$c} += @$elts; } else { $stats{typedefs}->{$c}++; } } while (my($name, $tab) = each %stats) { printf "%d %s\n", $tab->{ap} + $tab->{apr}, $name; for (qw(apr ap)) { printf "%6s: %d\n", $_, $tab->{$_}; } }