Farid Hajji: Perl - Einführung, Anwendungen, Referenz
2., aktualisierte und erweiterte Auflage
Addison-Wesley Longman, ISBN 3-8273-1535-2
show-symtab.pl
#!/usr/local/bin/perl -w
# show-symtab.pl -- Zeigt die Haupt-Symboltabelle an:
# Definieren wir zum Spass einmal einige Variablen:
use vars qw ( $varscal @varlist %varhash &varsub );
$varscal = 4711;
@varlist = qw (hello brave new world);
%varhash = ( I => 'one', II => 'two', III => 'three' );
sub varsub { print "hello, this is varsub()\n" }
# Die Symboltabelle %:: enthaelt alle aktuellen Bezeichner
# des laufenden Programms.
# VORSICHT: Nur die Bezeichner ohne ihre Praefixe sind
# in der Symboltabelle enthalten.
foreach $key ( sort keys %:: ) {
# $key ist ein gueltiger Bezeichner.
# Wir wissen aber nicht, von welchem Typ:
foreach $prefix (identify_type($key)) {
print "$prefix$key\n";
}
}
# Liefert eine Liste mit moeglichen Praefixen:
# Vorsicht: Beruecksichtigt nicht Referenzen und Filehandles
sub identify_type {
my $identifier = shift; # Bezeichner ohne Praefix
my @list = (); # Moegliche Typen
push (@list, '$') if defined ${$identifier};
push (@list, '@') if defined @{$identifier};
push (@list, '%') if defined %{$identifier};
push (@list, '&') if defined &{$identifier};
return @list;
}
[Prev] [Up] [Relevant Chapter] [Next]
[Alte Quelle]
| Last modified: $Date: 2006/05/18 12:56:05 $ FH. Search :: Sitemap :: Disclaimer :: Copyright :: Privacy |
|