Sha256: f3e4ac643718301cf6e1fae30e8d6516cbe7fc5c19498918146fc7b564b48b19
Contents?: true
Size: 752 Bytes
Versions: 8
Compression:
Stored size: 752 Bytes
Contents
module GraphQL module ResultCache class Result extend Forwardable attr_reader :value def_delegators :@value, :to_json, :as_json def initialize query_result @_result = query_result @value = process_with_result_cache end private def process_with_result_cache return process_each(@_result) unless @_result.is_a?(Array) @_result.map { |result| process_each(result) } end def process_each result result_cache_config = result.query.context[:result_cache] blank?(result_cache_config) ? result : result_cache_config.process(result) end def blank? obj obj.respond_to?(:empty?) ? !!obj.empty? : !obj end end end end
Version data entries
8 entries across 8 versions & 1 rubygems