Module: Stardust::GraphQL::DSL
- Included in:
- Stardust::GraphQL
- Defined in:
- lib/stardust/graphql/dsl.rb
Defined Under Namespace
Classes: MissingType
Instance Method Summary collapse
- #calling_file ⇒ Object
- #define_mutation(name, &block) ⇒ Object
- #define_query(name, &block) ⇒ Object
- #define_types(&block) ⇒ Object
Instance Method Details
#calling_file ⇒ Object
38 39 40 41 |
# File 'lib/stardust/graphql/dsl.rb', line 38 def calling_file caller[1][/[^:]+/] .gsub(Rails.root.to_s, "")[1..-1] end |
#define_mutation(name, &block) ⇒ Object
31 32 33 34 35 36 |
# File 'lib/stardust/graphql/dsl.rb', line 31 def define_mutation(name, &block) klass = Class.new(Mutation) klass.send(:graphql_name, name.to_s.camelize) klass.class_eval(&block) Collector.add_mutation(name, mutation: klass) end |
#define_query(name, &block) ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/stardust/graphql/dsl.rb', line 12 def define_query(name, &block) klass = Class.new(Query) klass.class_eval(&block) if !klass.get_type warn <<~TEXT Stardust Compilation Error Missing type definition for query in "#{name}". File: "#{calling_file}" ## Define the return type of the query type :my_type TEXT else Collector.add_query(name, query: klass) end end |