module JMESPath
Constants
- VERSION
Public Class Methods
load_json(path)
click to toggle source
@api private
# File lib/jmespath.rb, line 36 def load_json(path) JSON.load(File.open(path, 'r', encoding: 'UTF-8') { |f| f.read }) end
search(expression, data, runtime_options = {})
click to toggle source
@param [String] expression A valid
[JMESPath](https://github.com/boto/jmespath) expression.
@param [Hash] data @return [Mixed,nil] Returns the matched values. Returns `nil` if the
expression does not resolve inside `data`.
# File lib/jmespath.rb, line 25 def search(expression, data, runtime_options = {}) data = case data when Hash, Struct then data # check for most common case first when Pathname then load_json(data) when IO, StringIO then JSON.load(data.read) else data end Runtime.new(runtime_options).search(expression, data) end