             name: name,
             fields: fields
         )
+    }
+    
+    func replaceTypeReferences(typeMap: TypeMap) throws {
+        for field in fields {
+            try field.value.replaceTypeReferences(typeMap: typeMap)
+        }
     }
 }
 

    }
}

public typealias InputObjectFieldMap = [String: InputObjectFieldDefinition]

/**
 * List Modifier

}

/**
 * A special type to allow object/interface/input types to reference itself. It's replaced with the real type
 * object when the schema is built.
 */
public final class GraphQLTypeReference : GraphQLType, GraphQLOutputType, GraphQLInputType, GraphQLNullableType, GraphQLNamedType {
    public let name: String
    public let kind: TypeKind = .typeReference

