以下の内容はhttps://joker1007.hatenablog.com/entry/20121107/1352275839より取得しました。


寝付きが悪かったので、作った超簡易gem 第二弾 「maybe-chain」

眠れなくて暇だったので、思い付きをgemにしてみた。
要はActiveSupportのtryの変形バージョンで、tryでチェインするとなんか見づらいから、ラップしてメソッドチェインそのまま使えるようにしてみた。
ついでにKernelモジュールを拡張して、Haskellのmaybe関数っぽい感じで中身かデフォルト値を取ってブロックに渡せるようにした。というか、むしろこっちがやりたかった。


ググれば、絶対に車輪の再発明であること確実なのだが、暇潰しだったので、そこはスルー。


こんな感じになる。

m1 = "a".to_maybe.upcase.gsub(/A/, "B")

maybe(m1) do |str|
  puts str # => B
end

m2 = nil.to_maybe.upcase.gsub(/A/, "B")

maybe(m2) do |str|
  puts str # No Execute
end

maybe(m2, "a") do |str|
  puts str # => a
end



以上の内容はhttps://joker1007.hatenablog.com/entry/20121107/1352275839より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14