class JMESPath::Nodes::KeysFunction
Public Instance Methods
Source
# File lib/jmespath/nodes/function.rb, line 314 def call(args) if args.count == 1 value = args.first if value.respond_to?(:to_hash) value.to_hash.keys.map(&:to_s) elsif value.is_a?(Struct) value.members.map(&:to_s) else return maybe_raise Errors::InvalidTypeError, 'function keys() expects a hash' end else return maybe_raise Errors::InvalidArityError, 'function keys() expects one argument' end end