目指そうかなRubyist RSSフィード

 | 

2011-06-20

[meta] blockの基本  [meta] blockの基本 - 目指そうかなRubyist を含むブックマーク はてなブックマーク -  [meta] blockの基本 - 目指そうかなRubyist  [meta] blockの基本 - 目指そうかなRubyist のブックマークコメント

復習

blockは中括弧か、do endで定義

ブロックを定義できるのは、メソッドを呼び出す時だけ。

ブロックはメソッドにそのままわ達され、メソッド側でyieldを使ってブロックをコールバックする。

def a_method(a, b)
  a + yield(a, b)
end

a_method(1, 2) {|x, y| (x + y) * 3} # => 10

block_given?

メソッドの内部からblockが渡されているか確認する方法。

def a_method
  return yield if block_given?
  'no block'
end

a_method { 'block' } # =>'block'
a_method # =>'no block'

SolangeSolange2013/09/20 03:14No conpialmts on this end, simply a good piece.

NapfeNapfe2013/09/20 13:27Wow! Great to find a post with such a clear <a href="http://anqqvwl.com">mesaegs!</a>

AliAli2013/09/22 07:41I've been looikng for a post like this for an age http://weiadvvqaz.com [url=http://urmnawcl.com]urmnawcl[/url] [link=http://ypkbppnau.com]ypkbppnau[/link]

JulioJulio2013/09/23 11:53Wow! That's a really neat <a href="http://kjcmyy.com">anwers!</a>

 |