From 7232a13157dbec832993e38bf7d9baac6f3d7671 Mon Sep 17 00:00:00 2001 From: helloJetBase-tech <178346048+marktech0813@users.noreply.github.com> Date: Mon, 10 Nov 2025 16:45:14 +0200 Subject: [PATCH] Fix error: Unusable type signature for overload of graphql.schema.SchemaTraverser::depthFirst #4147 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit I found the problematic overload in SchemaTraverser and updated its public API to accept the correct visitor type, ensuring it’s usable outside the class. This removes the unusable public signature that referenced the private TraverserDelegateVisitor type. All existing internal calls (which pass new TraverserDelegateVisitor(...)) still work because that class implements TraverserVisitor. Summary: - Changed SchemaTraverser.depthFirst(Traverser, TraverserDelegateVisitor, ...) to use TraverserVisitor instead, and adjusted the helper accordingly. - Public API is now usable by callers without referencing a private inner class; no behavior change for existing internal usage. --- src/main/java/graphql/schema/SchemaTraverser.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/graphql/schema/SchemaTraverser.java b/src/main/java/graphql/schema/SchemaTraverser.java index 809904e30c..5322f4b407 100644 --- a/src/main/java/graphql/schema/SchemaTraverser.java +++ b/src/main/java/graphql/schema/SchemaTraverser.java @@ -83,9 +83,9 @@ public TraverserResult depthFirst(final GraphQLTypeVisitor graphQLTypeVisitor, C public TraverserResult depthFirst(final Traverser traverser, - final TraverserDelegateVisitor traverserDelegateVisitor, + final TraverserVisitor traverserVisitor, Collection roots) { - return doTraverse(traverser, roots, traverserDelegateVisitor); + return doTraverse(traverser, roots, traverserVisitor); } private Traverser initTraverser() { @@ -94,8 +94,8 @@ private Traverser initTraverser() { private TraverserResult doTraverse(Traverser traverser, Collection roots, - TraverserDelegateVisitor traverserDelegateVisitor) { - return traverser.traverse(roots, traverserDelegateVisitor); + TraverserVisitor traverserVisitor) { + return traverser.traverse(roots, traverserVisitor); } private static class TraverserDelegateVisitor implements TraverserVisitor {