void (final @NotNull CompletionParameters parameters, final @NotNull CompletionResultSet result, final @NotNull JsonSchemaObject rootSchema, boolean stop) { final PsiElement completionPosition = parameters.getOriginalPosition() != null ? parameters.getOriginalPosition() : parameters.getPosition(); Worker worker = new Worker(rootSchema, parameters.getPosition(), completionPosition, result); worker.work(); // stop further completion only if current contributor has at least one new completion variant if (stop && !worker.myVariants.isEmpty()) { result.stopHere(); } }