module GraphQL::Preload::FieldMetadata

Public Class Methods

new(*args, preload: nil, preload_scope: nil, **kwargs, &block) click to toggle source
Calls superclass method
# File lib/graphql/preload.rb, line 33
def initialize(*args, preload: nil, preload_scope: nil, **kwargs, &block)
  super(*args, **kwargs, &block)
  self.preload(preload) if preload
  self.preload_scope(preload_scope) if preload_scope
end

Public Instance Methods

preload(associations) click to toggle source
# File lib/graphql/preload.rb, line 39
def preload(associations)
  @preload ||= []
  @preload.concat Array.wrap associations
end
preload_scope(scope_proc) click to toggle source
# File lib/graphql/preload.rb, line 44
def preload_scope(scope_proc)
  @preload_scope = scope_proc
end
to_graphql() click to toggle source
Calls superclass method
# File lib/graphql/preload.rb, line 48
def to_graphql
  field_defn = super
  field_defn.metadata[:preload] = @preload
  field_defn.metadata[:preload_scope] = @preload_scope
  field_defn
end