Class: GraphQL::Introspection::TypeType
- Inherits:
-
BaseObject
- Object
- Schema::Member
- Schema::Object
- BaseObject
- GraphQL::Introspection::TypeType
- Defined in:
- lib/graphql/introspection/type_type.rb
Constant Summary
Constants included from Schema::Member::HasFields
Schema::Member::HasFields::CONFLICT_FIELD_NAMES, Schema::Member::HasFields::GRAPHQL_RUBY_KEYWORDS, Schema::Member::HasFields::RUBY_KEYWORDS
Constants included from Schema::Member::HasDirectives
Schema::Member::HasDirectives::NO_DIRECTIVES
Constants included from Schema::Member::GraphQLTypeNames
Schema::Member::GraphQLTypeNames::Boolean, Schema::Member::GraphQLTypeNames::ID, Schema::Member::GraphQLTypeNames::Int
Instance Attribute Summary
Attributes inherited from Schema::Object
Instance Method Summary collapse
- #enum_values(include_deprecated:) ⇒ Object
- #fields(include_deprecated:) ⇒ Object
- #input_fields(include_deprecated:) ⇒ Object
- #interfaces ⇒ Object
- #kind ⇒ Object
- #name ⇒ Object
- #of_type ⇒ Object
- #possible_types ⇒ Object
Methods inherited from BaseObject
Methods inherited from Schema::Object
authorized_new, #dataloader, fields, inherited, #initialize, kind, #raw_value, to_graphql
Methods included from Schema::Member::HasFields
#add_field, #all_field_definitions, #field, #field_class, #get_field, #global_id_field, #own_fields
Methods included from Schema::Member::HasInterfaces
#implements, #interface_type_memberships, #own_interface_type_memberships
Methods included from Schema::Member::CachedGraphQLDefinition
#graphql_definition, #initialize_copy, #type_class
Methods included from Relay::TypeExtensions
#connection_type, #define_connection, #define_edge, #edge_type
Methods included from Schema::Member::BaseDSLMethods
#accessible?, #authorized?, #default_graphql_name, #description, #graphql_name, #introspection, #introspection?, #mutation, #overridden_graphql_name, #to_graphql, #visible?
Methods included from Schema::Member::BaseDSLMethods::ConfigurationExtension
Methods included from Schema::Member::TypeSystemHelpers
#list?, #non_null?, #to_list_type, #to_non_null_type, #to_type_signature
Methods included from Schema::Member::Scoped
Methods included from Schema::Member::RelayShortcuts
#connection_type, #connection_type_class, #edge_type, #edge_type_class
Methods included from Schema::Member::HasPath
Methods included from Schema::Member::HasAstNode
Methods included from Schema::Member::HasDirectives
#directive, #directives, #remove_directive
Constructor Details
This class inherits a constructor from GraphQL::Schema::Object
Instance Method Details
#enum_values(include_deprecated:) ⇒ Object
38 39 40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/graphql/introspection/type_type.rb', line 38 def enum_values(include_deprecated:) if !@object.kind.enum? nil else enum_values = @context.warden.enum_values(@object) if !include_deprecated enum_values = enum_values.select {|f| !f.deprecation_reason } end enum_values end end |
#fields(include_deprecated:) ⇒ Object
78 79 80 81 82 83 84 85 86 87 88 |
# File 'lib/graphql/introspection/type_type.rb', line 78 def fields(include_deprecated:) if !@object.kind.fields? nil else fields = @context.warden.fields(@object) if !include_deprecated fields = fields.select {|f| !f.deprecation_reason } end fields.sort_by(&:name) end end |
#input_fields(include_deprecated:) ⇒ Object
60 61 62 63 64 65 66 67 68 |
# File 'lib/graphql/introspection/type_type.rb', line 60 def input_fields(include_deprecated:) if @object.kind.input_object? args = @context.warden.arguments(@object) args = args.reject(&:deprecation_reason) unless include_deprecated args else nil end end |
#interfaces ⇒ Object
52 53 54 55 56 57 58 |
# File 'lib/graphql/introspection/type_type.rb', line 52 def interfaces if @object.kind.object? || @object.kind.interface? @context.warden.interfaces(@object).sort_by(&:graphql_name) else nil end end |
#kind ⇒ Object
34 35 36 |
# File 'lib/graphql/introspection/type_type.rb', line 34 def kind @object.kind.name end |
#name ⇒ Object
30 31 32 |
# File 'lib/graphql/introspection/type_type.rb', line 30 def name object.graphql_name end |
#of_type ⇒ Object
90 91 92 |
# File 'lib/graphql/introspection/type_type.rb', line 90 def of_type @object.kind.wraps? ? @object.of_type : nil end |
#possible_types ⇒ Object
70 71 72 73 74 75 76 |
# File 'lib/graphql/introspection/type_type.rb', line 70 def possible_types if @object.kind.abstract? @context.warden.possible_types(@object).sort_by(&:graphql_name) else nil end end |