Smart::Args とは 実行時型チェック / パラメーターチェックが出来る便利なモジュールです。 現在、 Params::Validate がデファクトスタンダードっぽいんですが、速度が遅かったりするので正直微妙です。 まぁ、速度っていうか色々面倒い感じだなーって思ってきた人も多いと思います。 Smart::Args の使い方 use Smart::Args; sub foo { args my $p => 'Int', my $q => { isa => 'Int', optional => 1 }; say $q ? "$p, $q" : $p; } foo(p => 1); # 1 foo(p => 1, q => 2); # 1, 2 これまた簡単! 例えば、以下のようにすると foo(p => 'str'); 以下のように怒られます。 Validation failed f
