module Defp::DefpMethods
Public Instance Methods
_()
click to toggle source
# File lib/defp.rb, line 32 def _ false end
defp(*args)
click to toggle source
# File lib/defp.rb, line 12 def defp(*args) matches_pattern?(*args) ? Defp::Between.new : Defp::NullBetween.new end
matches_pattern?(*args)
click to toggle source
# File lib/defp.rb, line 16 def matches_pattern?(*args) # arg[1] == called_by_method_args # arg[0] == pattern_args args.zip(@__last_args) .select { |arg| arg[0] } .all? do |arg| # TODO cleanup if arg[0].is_a? Hash pattern_args = arg[0].reject {|_,v| !v} pattern_args.keys.all? { |key| arg[1][key] == arg[0][key] } else arg[0] == arg[1] end end end