Class: GraphQL::Introspection::InputValueType

Inherits:
BaseObject show all
Defined in:
lib/graphql/introspection/input_value_type.rb

Constant Summary

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

#context, #object

Instance Method Summary collapse

Methods inherited from BaseObject

field

Methods inherited from Schema::Object

authorized_new, fields, implements, #initialize, interfaces, kind, own_interfaces, to_graphql

Methods included from Schema::Member::HasFields

#add_field, #field, #field_class, #fields, #get_field, #global_id_field, #own_fields

Methods included from Schema::Member::HasPath

#path

Methods included from Schema::Member::RelayShortcuts

#connection_type, #connection_type_class, #edge_type, #edge_type_class

Methods included from Schema::Member::Scoped

#scope_items

Methods included from Schema::Member::TypeSystemHelpers

#kind, #list?, #non_null?, #to_list_type, #to_non_null_type, #to_type_signature

Methods included from Schema::Member::BaseDSLMethods

#accessible?, #authorized?, #default_graphql_name, #description, #graphql_name, #introspection, #introspection?, #mutation, #name, #overridden_graphql_name, #to_graphql, #visible?

Methods included from Relay::TypeExtensions

#connection_type, #define_connection, #define_edge, #edge_type

Methods included from Schema::Member::CachedGraphQLDefinition

#graphql_definition, #initialize_copy

Constructor Details

This class inherits a constructor from GraphQL::Schema::Object

Instance Method Details

#default_valueObject



14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'lib/graphql/introspection/input_value_type.rb', line 14

def default_value
  if @object.default_value?
    value = @object.default_value
    if value.nil?
      'null'
    else
      coerced_default_value = @object.type.coerce_result(value, @context)
      if @object.type.unwrap.is_a?(GraphQL::EnumType)
        if @object.type.list? 
          "[#{coerced_default_value.join(", ")}]"
        else
          coerced_default_value
        end
      else
        GraphQL::Language.serialize(coerced_default_value)
      end
    end
  else
    nil
  end
end