Contextual::Call - 呼び出し元のコンテキストで関数呼び出し
Version 0.01
use Contextual::Call qw(ccall); # invoke sub with your context. my $cc = ccall($coderef); ... some processes .. # and return value which was returned by $coderef and # is matched with context. return $cc->result;
"ccall" 関数は特定のコンテキスト(デフォルトでは呼び出した関数の コンテキスト)での関数呼び出しと, その呼び出し結果から復帰値の 再生成を行うことができます.
コンテキストによって復帰値が変わるメソッドをオーバーロード する時に便利です.
ccall 関数をエクスポートできます.
ccall
$cc = ccall($coderef);
指定した関数リファレンスを ccall を呼び出した関数と同じ コンテキストで呼び出します. 呼び出した結果を格納した Contextual::Call インスタンスを返します. 結果は後でインスタンスからコンテキストにあった形で 取り出すことができます.
この関数は "new" コンストラクタのお手軽形です.
$obj = Contextual::Call->new({ context => wantarray, sub => $coderef });
指定した関数リファレンスを ccall を呼び出した関数と同じ コンテキストで呼び出します. 呼び出した結果を格納した Contextual::Call インスタンスを返します. このメソッドは "ccall" 関数のオブジェクト指向形式です.
return $obj->result();
ccall/new を呼び出した時と同じコンテキストで呼び出し結果を返します.
YAMASHINA Hio, <hio at cpan.org>
<hio at cpan.org>
バグや要望は bug-contextual-call at rt.cpan.org 宛に 報告してください. 若しくは http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Contextual-Call. にある web インターフェースからでもかまいません. そこから私に通知され, そして私が変更を行うことで報告頂いたバグの進捗を 自動的にあなたに伝えるでしょう.
bug-contextual-call at rt.cpan.org
このモジュールのドキュメントは perldoc コマンドで見ることが出来ます.
perldoc Contextual::Call
また, 以下の場所でも見ることが出来ます:
AnnoCPAN: Annotated CPAN documentation
http://annocpan.org/dist/Contextual-Call
CPAN Ratings
http://cpanratings.perl.org/d/Contextual-Call
RT: CPAN's request tracker
http://rt.cpan.org/NoAuth/Bugs.html?Dist=Contextual-Call
Search CPAN
http://search.cpan.org/dist/Contextual-Call
Copyright 2007 YAMASHINA Hio, all rights reserved.
このプログラムはフリーソフトウェアです。あなたは Perl と同じ ライセンスの 元で再配布及び変更を行うことが出来ます.
To install Contextual::Call, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Contextual::Call
CPAN shell
perl -MCPAN -e shell install Contextual::Call
For more information on module installation, please visit the detailed CPAN module installation guide.