Params::Validate
こんなんで、
1 use strict; 2 use warnings; 3 4 use Params::Validate qw/:all/; 5 6 sub hoge { 7 8 my %hash = validate( @_, 9 { 10 hoge => 2, 11 tage => 1, 12 } 13 ); 14 } 15 16 hoge( 17 { 18 hoge => 2 19 } 20 );
こんな感じ。
あとは、タイプ指定とかでいけるか。
Mandatory parameter 'tage' missing in call to main::hoge
http://search.cpan.org/~drolsky/Params-Validate-0.86/lib/Params/Validate.pm