]> git.donarmstrong.com Git - infobot.git/blobdiff - scripts/symname.pl
* Merge changes from prposed changes
[infobot.git] / scripts / symname.pl
index df8e15888f5e103003034641e1331d5b02596956..86e26490b66155aaf39620a066bb791c6fa72e71 100755 (executable)
@@ -59,7 +59,7 @@ sub DumpHash{
  print "$padding$symname\n";
 
  foreach (@list) {
-  my $ref = ref %{$symname};
+  my $ref = ref %{$symname}; #FIXME
   $size += length($_);
   if ($ref eq 'ARRAY') {
    $size += &DumpArray($pad+1, "@" . $_, $_);
@@ -89,11 +89,18 @@ sub DumpPackage {
    print "$padding \$$symname='$sym'\n";
    $scalar++;
    $size += length($sym);
+  } elsif (defined @sym) {
+   $size += &DumpArray($pad+1, $symname, \@sym);
+  } elsif (defined %sym) {
+   $size += &DumpHash($pad+1, $symname, \%sym);
+  } elsif (($symname =~ /::/) and ($symname ne 'main::')) {
+   $size += &DumpPackage($pad+1, \%sym, $symname);
+  } else {
+   print("ERROR $symname" . ref $symname . "\n");
   }
-  $size += &DumpArray($pad+1, $symname, \@sym) if (defined @sym);
-  $size += &DumpHash($pad+1, $symname, \%sym) if (defined %sym);
-  $size += &DumpPackage($pad+1, \%sym, $symname) if (($symname =~ /::/) and ($symname ne 'main::'));
  }
  print $padding."scalars $scalar, size $size\n";
  return $size;
 }
+
+# vim:ts=4:sw=4:expandtab:tw=80