class Stardust::GraphQL::Object

Public Class Methods

field(name, type, description = nil, **kwargs, &block) click to toggle source
# File lib/stardust/graphql/object.rb, line 20
def self.field(name, type, description = nil, **kwargs, &block)
  @__types_to_lookup__ ||= []
  @__types_to_lookup__ << ->(klass) {
    actual_type = Collector.lookup_type(type)

    klass
    .method(:field)
    .super_method
    .call(name, actual_type, description, **kwargs, &block)
  }
end
implements(type) click to toggle source
# File lib/stardust/graphql/object.rb, line 8
def self.implements(type)
  @__types_to_lookup__ ||= []
  @__types_to_lookup__ << ->(klass) {
    actual_type = Collector.lookup_type(type)

    klass
    .method(:implements)
    .super_method
    .call(actual_type)
  }
end
replace_types!() click to toggle source
# File lib/stardust/graphql/object.rb, line 32
def self.replace_types!
  return unless @__types_to_lookup__
  @__types_to_lookup__.each {|lookup| lookup.(self)}
end

Public Instance Methods

current_user() click to toggle source
# File lib/stardust/graphql/object.rb, line 37
def current_user
  context[:current_user]
end