=encoding utf8 =for stopwords YAMASHINA Hio ACKNOWLEDGEMENTS AnnoCPAN CPAN RT runblock =head1 NAME Devel::RunBlock - run coderef as block J<< ja; Devel::RunBlock - CODEREFをブロックとして扱う >> =head1 VERSION Version 0.01 =head1 SYNOPSIS use Devel::RunBlock qw(runblock); =head1 EXPORT This module can three functions. J<< ja; このモジュールには3つのエクスポート可能な関数があります. >> =head1 FUNCTIONS =head2 runblock runblock $sub; run C<$sub> as code block. if Ced in block, it returns from sub which calls C function. J<< ja; C<$sub> をコードブロックとして実行します. ブロック内での C は, C 関数を呼び出した関数 からの脱出となります. >> =head2 runblock_state my $rstate = runblock_state { code.. }; run C<$sub> and return whether C<$sub> is returned by C statement or leave scope. J<< ja; C<$sub> を実行し, C<$sub> が C 文で復帰したのか, それともスコープを抜けて復帰したのかを調べて返します. >> C<$rstate==1> means returned by C statement. C<$rstate==0> means returned by left scope. J<< ja; C<$rstate==1> は C 文による復帰を, C<$rstate==0> スコープを抜けたことによる復帰を示します . >> =head2 long_wantarray my $wa = long_wantarray $uplevel; like a C builtin function, but can test caller's wantarray state. J<< ja; 組み込み関数 C とほぼ同じですが, 呼び出し履歴の任意の点に遡って調査できます. >> =head2 long_return long_return $uplevel; #long_return $uplevel, $rval..; long jump return. currently, could not return values. J<< ja; 複数の関数をまたいでリターンします. 現在復帰値を返すことができません. >> $uplevel=0 means no return (just return your sub). $uplevel=1 means normal return, just same as normal return statement. J<< ja; $uplevel=0 だとリターンは起こりません(呼び出したあなたの関数に 戻ります). $uplevel=1 だと普通の return 文と同じです. >> =head1 AUTHOR YAMASHINA Hio, C<< >> J<< ja; 山科 氷魚 (YAMASHINA Hio), C<< >> >> =head1 BUGS Please report any bugs or feature requests to C, or through the web interface at L. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes. J<< ja; バグや要望は C 宛に 報告してください. 若しくは L. にある web インターフェースからでもかまいません. そこから私に通知され, そして私が変更を行うことで報告頂いたバグの進捗を 自動的にあなたに伝えるでしょう. >> =head2 KNOWN BUGS - long_return could not return values. J<< ja; - long_return は復帰値を返せません. >> =head1 SUPPORT You can find documentation for this module with the perldoc command. J<< ja; このモジュールのドキュメントは perldoc コマンドで見ることが出来ます. >> perldoc Devel::RunBlock You can also look for information at: =over 4 =item * AnnoCPAN: Annotated CPAN documentation L =item * CPAN Ratings L =item * RT: CPAN's request tracker L =item * Search CPAN L =back =head1 ACKNOWLEDGEMENTS =head1 COPYRIGHT & LICENSE Copyright 2006 YAMASHINA Hio, all rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. J<< ja; このプログラムはフリーソフトウェアです。あなたは Perl と同じ ライセンスの 元で再配布及び変更を行うことが出来ます. >> =cut