• 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31

ブロック引数を1つとるブロックつき関数を呼び出すときに

   1  create_table do |t|
   2    t.string :foo
   3  end

ブロック仮引数を省略した場合、暗黙のうちにブロック引数に対する instance_eval を挟むようにすると

   1  create_table do |t|
   2    t.instance_eval do
   3      string :foo
   4    end
   5  end

色々と綺麗にかけるようになる気がします。

   1  create_table do
   2    string :foo
   3  end

ついでに、省略されたブロック引数に $ とかでアクセスできると

   1  [1,2,3].map{to_s}.select{$>2}

みたいな事ができて楽しいかもです。 ついでに case の値もこんなふうに

   1  case price # <= この値を $ で参照したい
   2  when $ < 5; #...
   3  when $ < 10; #...
   4  end

参照できるといいな。

posted by Png genki on Wed 31 Aug 2011 at 07:52

Comments:

or Preview
Social Bookmarks
  • Delicious
  • B_entry1987
  • Clip_16_12_w
Services from s21g
twpro(ツイプロ)
Twitterプロフィールを快適検索
地価2009
土地の値段を調べてみよう
MyRestaurant
自分だけのレストラン手帳
Formula
ブログに数式を埋め込める数式コミュニティ