Sha256: 2a9d67d217ab20243d998ea5de83a0a659ee1616db146c80a5ac6163382db5ca
Contents?: true
Size: 663 Bytes
Versions: 2
Compression:
Stored size: 663 Bytes
Contents
# frozen_string_literal: true require 'hashie/mash' module GQLi # Response object wrapper class Response attr_reader :data, :errors, :query def initialize(data, errors, query) @data = Hashie::Mash.new(data) @errors = parse_errors(errors) @query = query end private # Accepts Hash or Array of errors and converts them to Hashie::Mash instances. # Recursively calls #parse_errors with items if array. # Returns nil if nil is passed. def parse_errors(errors) return unless errors return errors.map { |e| parse_errors(e) } if errors.is_a?(Array) Hashie::Mash.new(errors) end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
gqli-1.2.0 | lib/gqli/response.rb |
gqli-1.1.0 | lib/gqli/response.rb |