2016年1月8日金曜日

[ruby] lambda式

lambda式

rubyにもlambda式がある。
lambda式の評価はcallメソッドを使用する
  def getInsn(json, predicate)
    json.find{|e| e != nil && predicate.call(e)}
  end
定義はlambda+ブロックで行う
  def noError(json)
    (insn = getInsn(json, lambda{|e| e["Name"] == "GetParseErrors" || e["Name"] == "GetParseError"})) != nil &&
      (!insn.include?("Error") || insn["Error"] == [])
  end

0 件のコメント:

コメントを投稿