Module: GraphQL::Schema::Member::BaseDSLMethods Private
- Includes:
- FindInheritedValue
- Included in:
- Interface::DefinitionMethods, GraphQL::Schema::Member, Resolver
- Defined in:
- lib/graphql/schema/member/base_dsl_methods.rb
Overview
This module is part of a private API. You should avoid using this module if possible, as it may be removed or be changed in the future.
DSL methods shared by lots of things in the GraphQL Schema.
Defined Under Namespace
Modules: ConfigurationExtension
Instance Attribute Summary collapse
-
#default_graphql_name ⇒ Object
readonly
private
Creates the default name for a schema member.
-
#graphql_name(new_name = nil) ⇒ String
readonly
private
Call this with a new name to override the default name for this schema member; OR call it without an argument to get the name of this schema member.
Instance Method Summary collapse
- #authorized?(object, context) ⇒ Boolean private
-
#comment(new_comment = NOT_CONFIGURED) ⇒ String?
private
Call this method to provide a new comment; OR call it without an argument to get the comment.
- #default_relay? ⇒ Boolean private
-
#description(new_description = nil) ⇒ String
private
Call this method to provide a new description; OR call it without an argument to get the description.
-
#introspection(new_introspection = nil) ⇒ Boolean
private
If true, this object is part of the introspection system.
- #introspection? ⇒ Boolean private
-
#mutation(mutation_class = nil) ⇒ Class
private
The mutation this type was derived from, if it was derived from a mutation.
- #visible?(context) ⇒ Boolean private
Instance Attribute Details
#default_graphql_name ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Creates the default name for a schema member.
The default name is the Ruby constant name,
without any namespaces and with any -Type suffix removed
107 108 109 110 111 112 113 |
# File 'lib/graphql/schema/member/base_dsl_methods.rb', line 107 def default_graphql_name @default_graphql_name ||= begin raise GraphQL::RequiredImplementationMissingError, 'Anonymous class should declare a `graphql_name`' if name.nil? g_name = -name.split("::").last g_name.end_with?("Type") ? g_name.sub(/Type\Z/, "") : g_name end end |
#graphql_name(new_name = nil) ⇒ String
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Call this with a new name to override the default name for this schema member; OR call it without an argument to get the name of this schema member
The default name is implemented in default_graphql_name
20 21 22 23 24 25 26 27 |
# File 'lib/graphql/schema/member/base_dsl_methods.rb', line 20 def graphql_name(new_name = nil) if new_name GraphQL::NameValidator.validate!(new_name) @graphql_name = new_name else @graphql_name ||= default_graphql_name end end |
Instance Method Details
#authorized?(object, context) ⇒ Boolean
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
119 120 121 |
# File 'lib/graphql/schema/member/base_dsl_methods.rb', line 119 def (object, context) true end |
#comment(new_comment = NOT_CONFIGURED) ⇒ String?
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Call this method to provide a new comment; OR call it without an argument to get the comment
47 48 49 50 51 52 53 54 55 |
# File 'lib/graphql/schema/member/base_dsl_methods.rb', line 47 def comment(new_comment = NOT_CONFIGURED) if !NOT_CONFIGURED.equal?(new_comment) @comment = new_comment elsif defined?(@comment) @comment else nil end end |
#default_relay? ⇒ Boolean
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
123 124 125 |
# File 'lib/graphql/schema/member/base_dsl_methods.rb', line 123 def default_relay? false end |
#description(new_description = nil) ⇒ String
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Call this method to provide a new description; OR call it without an argument to get the description
33 34 35 36 37 38 39 40 41 |
# File 'lib/graphql/schema/member/base_dsl_methods.rb', line 33 def description(new_description = nil) if new_description @description = new_description elsif defined?(@description) @description else @description = nil end end |
#introspection(new_introspection = nil) ⇒ Boolean
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Returns If true, this object is part of the introspection system.
76 77 78 79 80 81 82 83 84 |
# File 'lib/graphql/schema/member/base_dsl_methods.rb', line 76 def introspection(new_introspection = nil) if !new_introspection.nil? @introspection = new_introspection elsif defined?(@introspection) @introspection else false end end |
#introspection? ⇒ Boolean
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
86 87 88 |
# File 'lib/graphql/schema/member/base_dsl_methods.rb', line 86 def introspection? !!@introspection end |
#mutation(mutation_class = nil) ⇒ Class
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
The mutation this type was derived from, if it was derived from a mutation
92 93 94 95 96 97 98 99 100 |
# File 'lib/graphql/schema/member/base_dsl_methods.rb', line 92 def mutation(mutation_class = nil) if mutation_class @mutation = mutation_class elsif defined?(@mutation) @mutation else nil end end |
#visible?(context) ⇒ Boolean
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
115 116 117 |
# File 'lib/graphql/schema/member/base_dsl_methods.rb', line 115 def visible?(context) true end |