module HQ::GraphQL::Inputs

Public Class Methods

[](key) click to toggle source
# File lib/hq/graphql/inputs.rb, line 10
def self.[](key)
  @inputs ||= Hash.new do |hash, klass|
    hash[klass] = klass_for(klass)
  end
  @inputs[key]
end
reset!() click to toggle source

Only being used in testing

# File lib/hq/graphql/inputs.rb, line 18
def self.reset!
  @inputs = nil
end

Private Class Methods

klass_for(klass_or_string) click to toggle source
# File lib/hq/graphql/inputs.rb, line 25
def klass_for(klass_or_string)
  klass = klass_or_string.is_a?(String) ? klass_or_string.constantize : klass_or_string
  resource = ::HQ::GraphQL.lookup_resource(klass)

  raise(Error, Error::MISSING_TYPE_MSG % { klass: klass.name }) if !resource
  resource.input_klass
end