Deprecate com.intellij.lang.WhitespacesAndCommentsBinder.RecursiveBinder

GitOrigin-RevId: d287a1403f37064ccb9c3f855efe42d49053b5da
This commit is contained in:
Max Medvedev
2025-01-05 22:54:21 +00:00
committed by intellij-monorepo-bot
parent 7bacd479a0
commit 1ad98f1540
3 changed files with 9 additions and 3 deletions
@@ -664,6 +664,7 @@ com.intellij.lang.WhitespaceSkippedCallback
- a:onSkip(com.intellij.psi.tree.IElementType,I,I):V
com.intellij.lang.WhitespacesAndCommentsBinder
- a:getEdgePosition(java.util.List,Z,com.intellij.lang.WhitespacesAndCommentsBinder$TokenTextGetter):I
- isRecursive():Z
com.intellij.lang.WhitespacesAndCommentsBinder$RecursiveBinder
- com.intellij.lang.WhitespacesAndCommentsBinder
com.intellij.lang.WhitespacesAndCommentsBinder$TokenTextGetter
@@ -1,4 +1,4 @@
// Copyright 2000-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.lang;
import com.intellij.psi.tree.IElementType;
@@ -24,9 +24,14 @@ public interface WhitespacesAndCommentsBinder {
/**
* Recursive binder is allowed to adjust nested elements positions.
* @deprecated override {@link #isRecursive()} instead.
*/
@Deprecated
interface RecursiveBinder extends WhitespacesAndCommentsBinder {
}
default boolean isRecursive() {
return this instanceof RecursiveBinder;
}
/**
@@ -1,4 +1,4 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
// Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.lang.impl;
import com.intellij.lang.*;
@@ -1197,7 +1197,7 @@ public class PsiBuilderImpl extends UnprotectedUserDataHolder implements PsiBuil
}
int lexemeIndex = item.getLexemeIndex(done);
boolean recursive = binder instanceof WhitespacesAndCommentsBinder.RecursiveBinder;
boolean recursive = binder.isRecursive();
int prevProductionLexIndex;
if (recursive) {
prevProductionLexIndex = 0;