use strict; use Data::Dumper; my $package_name = "Data"; print Dumper *{$::{$package_name."::"}}{HASH}; #### $VAR1 = { 'Dumper::' => *{'Data::Dumper::'} }; #### use strict; use Data::Dumper; my $top_level = "Data"; my $second_level = "Dumper"; print Dumper *{${*{$::{$top_level."::"}}{HASH}}{$second_level."::"}}{HASH} #### $VAR1 = { 'Seen' => *Data::Dumper::Seen, 'post' => *Data::Dumper::post, 'Toaster' => *Data::Dumper::Toaster, 'Varname' => *Data::Dumper::Varname, 'pad' => *Data::Dumper::pad, 'Values' => *Data::Dumper::Values, 'Dumpf' => *Data::Dumper::Dumpf, 'new' => *Data::Dumper::new, '_sortkeys' => *Data::Dumper::_sortkeys, 'Pair' => *Data::Dumper::Pair, 'DESTROY' => *Data::Dumper::DESTROY, 'EXPORT_OK' => *Data::Dumper::EXPORT_OK, 'Pad' => *Data::Dumper::Pad, 'confess' => *Data::Dumper::confess, 'Deepcopy' => *Data::Dumper::Deepcopy, 'EXPORT_FAIL' => *Data::Dumper::EXPORT_FAIL, 'Sortkeys' => *Data::Dumper::Sortkeys, 'Freezer' => *Data::Dumper::Freezer, 'ISA' => *Data::Dumper::ISA, 'Terse' => *Data::Dumper::Terse, 'Maxdepth' => *Data::Dumper::Maxdepth, 'Dumpp' => *Data::Dumper::Dumpp, 'Useperl' => *Data::Dumper::Useperl, 'Dumpxs' => *Data::Dumper::Dumpxs, 'bootstrap' => *Data::Dumper::bootstrap, '_dump' => *Data::Dumper::_dump, 'qquote' => *Data::Dumper::qquote, 'Useqq' => *Data::Dumper::Useqq, 'BEGIN' => *Data::Dumper::BEGIN, 'Purity' => *Data::Dumper::Purity, 'Names' => *Data::Dumper::Names, 'Deparse' => *Data::Dumper::Deparse, 'EXPORT' => *Data::Dumper::EXPORT, 'DumperX' => *Data::Dumper::DumperX, 'croak' => *Data::Dumper::croak, 'Dump' => *Data::Dumper::Dump, 'import' => *Data::Dumper::import, 'Indent' => *Data::Dumper::Indent, 'Dumper' => *Data::Dumper::Dumper, 'Quotekeys' => *Data::Dumper::Quotekeys, 'Bless' => *Data::Dumper::Bless, 'carp' => *Data::Dumper::carp, 'VERSION' => *Data::Dumper::VERSION, 'Reset' => *Data::Dumper::Reset, 'Dumpperl' => *Data::Dumper::Dumpperl }; #### use Data::Dumper; my $top_level = "Data"; my $second_level = "Dumper"; my $subname = "Dumper"; print &{*{${*{${*{$::{$top_level."::"}}{HASH}}{$second_level."::"}}{HASH}}{$subname}}{CODE}}(\%Data::); #### $VAR1 = { 'Dumper::' => *{'Data::Dumper::'} }; #### use strict; use Data::Dumper; my $package_name = "Data"; print Dumper \%{$::{$package_name."::"}}; use strict; use Data::Dumper; my $top_level = "Data"; my $second_level = "Dumper"; print Dumper \%{${$::{$top_level."::"}}{$second_level."::"}}; use Data::Dumper; my $top_level = "Data"; my $second_level = "Dumper"; my $subname = "Dumper"; print &{${${$::{$top_level."::"}}{$second_level."::"}}{$subname}}(\%Data::);