class JMESPath::Nodes::ContainsFunction

Public Instance Methods

call(args) click to toggle source
# File lib/jmespath/nodes/function.rb, line 144
def call(args)
  if args.count == 2
    haystack = args[0]
    needle = args[1]
    if String === haystack || Array === haystack
      haystack.include?(needle)
    else
      return maybe_raise Errors::InvalidTypeError, "contains expects 2nd arg to be a list"
    end
  else
    return maybe_raise Errors::InvalidArityError, "function contains() expects 2 arguments"
  end
end