Changeset 434

Show
Ignore:
Timestamp:
01/09/07 10:39:56
Author:
ben
Message:

Say more, prettier.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • openpgpsdk/trunk/configure

    r431 r434  
    168168} 
    169169 
     170our $indent; 
     171 
     172sub indent { 
     173    for my $n (2..$indent) { 
     174        print "  "; 
     175    } 
     176} 
     177 
     178sub showThing { 
     179    my $rthing=shift; 
     180 
     181    if(ref $rthing eq 'SCALAR') { 
     182        return $$rthing; 
     183    } elsif(ref $rthing eq 'REF') { 
     184        return showThing($$rthing); 
     185    } elsif(ref $rthing eq 'ARRAY') { 
     186        return join(' ',@$rthing); 
     187    } elsif(ref $rthing eq 'HASH') { 
     188        my $str; 
     189        foreach my $k (keys %$rthing) { 
     190            $str .= ' ' if $str; 
     191            $str .= "$k -> $rthing->{$k}"; 
     192        } 
     193        return $str; 
     194    } 
     195 
     196    print "ref=", ref($rthing), "\n"; 
     197    return '?Can\'t display?'; 
     198} 
     199 
    170200sub getKnowledge { 
    171201    my $thing=shift; 
     
    174204      if !exists $Knowledge{$thing}; 
    175205 
     206    ++$indent; 
    176207    if(ref $Knowledge{$thing} eq 'CODE') { 
     208        indent(); 
    177209        print "Finding $thing\n"; 
    178210        $Knowledge{$thing}=&{$Knowledge{$thing}}(); 
    179     } 
     211        indent(); 
     212        print "Found $thing: ", showThing(\$Knowledge{$thing}), "\n"; 
     213    } 
     214    --$indent; 
    180215    return $Knowledge{$thing}; 
    181216}