@@ -520,8 +520,12 @@ def build_results
520520 else
521521 nil
522522 end
523- elsif field_result . is_a? ( GraphQL ::RuntimeError )
524- add_graphql_error ( field_result )
523+ elsif field_result . is_a? ( Finalizer )
524+ if field_result . is_a? ( GraphQL ::RuntimeError )
525+ add_graphql_error ( field_result )
526+ else
527+ field_result . path = path
528+ end
525529 else
526530 # TODO `nil`s in [T!] types aren't handled
527531 return_type . coerce_result ( field_result , ctx )
@@ -596,8 +600,13 @@ def build_graphql_result(graphql_result, key, field_result, return_type, is_nn,
596600 else
597601 graphql_result [ key ] = nil
598602 end
599- elsif field_result . is_a? ( GraphQL ::RuntimeError )
600- graphql_result [ key ] = add_graphql_error ( field_result )
603+ elsif field_result . is_a? ( Finalizer )
604+ graphql_result [ key ] = if field_result . is_a? ( GraphQL ::RuntimeError )
605+ add_graphql_error ( field_result )
606+ else
607+ field_result . path = path
608+ field_result
609+ end
601610 elsif is_list
602611 if is_nn
603612 return_type = return_type . of_type
@@ -728,16 +737,6 @@ def resolve_batch(objects, context, args_hash)
728737 end
729738 end
730739 end
731-
732- class RawValueFieldResolveStep < FieldResolveStep
733- def build_graphql_result ( graphql_result , key , field_result , return_type , is_nn , is_list , is_from_array ) # rubocop:disable Metrics/ParameterLists
734- if field_result . is_a? ( Interpreter ::RawValue )
735- graphql_result [ key ] = field_result . resolve
736- else
737- super
738- end
739- end
740- end
741740 end
742741 end
743742end
0 commit comments