module Stardust::GraphQL::Interface
Public Class Methods
field(name, type, description = nil, **kwargs, &block)
click to toggle source
# File lib/stardust/graphql/interface.rb, line 17 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
graphql_name(name = nil)
click to toggle source
# File lib/stardust/graphql/interface.rb, line 9 def self.graphql_name(name = nil) if name @__graphql_name__ = name else @__graphql_name__ end end
included(base)
click to toggle source
# File lib/stardust/graphql/interface.rb, line 5 def self.included(base) base.module_eval do include ::GraphQL::Schema::Interface def self.graphql_name(name = nil) if name @__graphql_name__ = name else @__graphql_name__ end end 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 def self.replace_types! return unless @__types_to_lookup__ @__types_to_lookup__.each {|lookup| lookup.(self)} end end base end
replace_types!()
click to toggle source
# File lib/stardust/graphql/interface.rb, line 30 def self.replace_types! return unless @__types_to_lookup__ @__types_to_lookup__.each {|lookup| lookup.(self)} end