lib/graphql/schema/introspection_system.rb in graphql-2.3.10 vs lib/graphql/schema/introspection_system.rb in graphql-2.3.11
- old
+ new
@@ -23,11 +23,11 @@
load_constant(:InputValueType),
load_constant(:TypeKindEnum),
load_constant(:DirectiveLocationEnum)
]
@types = {}
- @possible_types = {}.tap(&:compare_by_identity)
+ @possible_types = {}.compare_by_identity
type_defns.each do |t|
@types[t.graphql_name] = t
@possible_types[t] = [t]
end
@entry_point_fields =
@@ -88,10 +88,11 @@
private
def resolve_late_binding(late_bound_type)
case late_bound_type
when GraphQL::Schema::LateBoundType
- @schema.get_type(late_bound_type.name)
+ type_name = late_bound_type.name
+ @types[type_name] || @schema.get_type(type_name)
when GraphQL::Schema::List
resolve_late_binding(late_bound_type.of_type).to_list_type
when GraphQL::Schema::NonNull
resolve_late_binding(late_bound_type.of_type).to_non_null_type
when Module