12th
Sat
Wormhole-0.1.2リリース
ブラックボックスなシステムを間に挟んで caller と callee 間で通信を行なう Wormholeのバージョン0.1.2 をリリースしました。
新しい機能:
- Named wormhole: ネストしたWormholeの呼び出しに対して、名前を付けて区別することができるようになりました
- Syntax constraint
: catchブロックの直後にreturnメソッドが呼ばれていない場合に例外を投げるようにしました 1 w = Wormhole.catch do 2 end #=> Wormhole::
LateReturn Error 3 (snip) 4 w.return 5 6 Worrmhole.catch do 7 end.return # => OK
ついでにWormholeの使用例を。
app/contro
1 require 'wormhole' 2 class FooController < Applicatio nControlle r 3 def index 4 Wormhole.catch do 5 render :action => 'index' 6 end.return do |result| 7 result[:html] = "Hello, world!" 8 end 9 end 10 end
app/views/
1 <% Wormhole.throw do |result| %> 2 <%= result[:html] #=> 'Hello, world!' %> 3 <% end %>
Viewのコードから一端Controller
このように、おいそれとは変更できないようなフレームワークのコードを跨いで、呼び出し側と呼び出し元の間で情報のやり取りを行なう事ができます。
posted by
genki
on Sat 12 Jul 2008
at 06:05