class JMESPath::Runtime

@api private

def default_parser(options)

def default_parser(options)
  if options[:cache_expressions] == false
    Parser.new(options)
  else
    DEFAULT_PARSER.new(options)
  end
end

def initialize(options = {})

Options Hash: (**options)
  • :parser (Parser, CachingParser) --
  • :disable_visit_errors (Boolean) -- When `true`,
  • :cache_expressions (Boolean) -- When `false`, a non

Other tags:
    Example: Disable caching -
    Example: Re-use a Runtime, caching enabled by default -
def initialize(options = {})
  @parser = options[:parser] || default_parser(options)
end

def search(expression, data)

Returns:
  • (Mixed, nil) -

Parameters:
  • data (Hash) --
  • expression (String) --
def search(expression, data)
  optimized_expression = @parser.parse(expression).optimize
  optimized_expression.visit(data)
end