タイトルが示すように、Perlで、サブルーチン参照のリストを含むハッシュを保存するにはどうすればよいですか?たとえば、他のライブラリに含まれているサブルーチンへの参照を含む次のハッシュがあります。
my %testMap = (
helloTest => \&runHello,
goodbyeTest => \&runGoodbye,
);
次の問題でData::Dumperを使用しようとすると:
my($out) = new FileHandle ">$fileName";
my $serialized => Data::Dumper->Dump([\%testMap], [$HASH_REFERENCE]);
print $out $serialized;
close $out;
次のようなファイルになります。
$testMap = {
'goodbyeTest' => sub { "DUMMY" },
'helloTest' => sub { "DUMMY" }
};
出力を元のリストに表示されているように見せたい場合、これを行う方法はありますか?
Data :: DumperとStorableを使ったいくつかの実験では、これまで何も判明していません。これは、実行中のコードで参照の実際のコードを使用できないことが原因であると思われます。