サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
ノーベル賞
d.hatena.ne.jp/gitrhythm
rubydefine_methodでデフォルト引数が使えないか?と思って調べていたら見つけました。 Ruby1.9以上じゃないとダメですが、no title の2番目の回答にあるようにlambdaリテラルを使えば出来ますね。 class Hoge def create_greet self.class.class_eval do define_method("greet", ->(message = 'Hello', option = ' World!') { puts "#{message} #{option}" }) end end end hoge = Hoge.new hoge.create_greet hoge.greet hoge.greet('Goodbye') hoge.greet('こんにちは', '世界') 最初はなんだこれ?と思ったlambdaリテラルだけど、なれる
rack, rubyruby 1.9.2p290とrails3.1.1とrack1.3.4の組み合わせで ・・・rack-1.3.4/lib/rack/backports/uri/common_192.rb:53: warning: already initialized constant WFKV_ とエラーが出たので調べてみた。 結論としては、common_192.rbの53行目の上にremove_const :WFKV_として一旦WFKV_の定義を削除してあげれば良いっぽい。実際Rackのソースコードもそのように修正されている。 Commit 235f83cb88650beaa7fd0089ee0d19ca46507fc0 to rack/rack - GitHub remove_const :WFKV_ WFKV_ = '(?:[^%#=;&]*(?:%\h\h[^%#=;&]*)
このページを最初にブックマークしてみませんか?
『d.hatena.ne.jp』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く