class JMESPath::Nodes::ReverseFunction
def call(args)
def call(args) if args.count == 0 msg = 'function reverse() expects 1 or more arguments' return maybe_raise Errors::InvalidArityError, msg end value = args.first if value.respond_to?(:to_ary) value.to_ary.reverse elsif value.respond_to?(:to_str) value.to_str.reverse else msg = 'function reverse() expects an array or string' return maybe_raise Errors::InvalidTypeError, msg end end