diff --git a/jvm/jvm-analysis-api/src/com/intellij/codeInspection/AnalysisUastUtil.java b/jvm/jvm-analysis-api/src/com/intellij/codeInspection/AnalysisUastUtil.java
index ed0ddb7ce8e5..b55c740237c2 100644
--- a/jvm/jvm-analysis-api/src/com/intellij/codeInspection/AnalysisUastUtil.java
+++ b/jvm/jvm-analysis-api/src/com/intellij/codeInspection/AnalysisUastUtil.java
@@ -8,7 +8,7 @@ import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.uast.*;
-@ApiStatus.Experimental
+@ApiStatus.Internal
public final class AnalysisUastUtil {
@Nullable
public static UCallExpression getUCallExpression(@NotNull PsiElement element) {
diff --git a/jvm/jvm-analysis-api/src/com/intellij/codeInspection/UastCallMatcher.java b/jvm/jvm-analysis-api/src/com/intellij/codeInspection/UastCallMatcher.java
index 0a27c482156d..8ad8a5eb05b8 100644
--- a/jvm/jvm-analysis-api/src/com/intellij/codeInspection/UastCallMatcher.java
+++ b/jvm/jvm-analysis-api/src/com/intellij/codeInspection/UastCallMatcher.java
@@ -16,13 +16,7 @@ import java.util.Arrays;
import java.util.LinkedHashSet;
import java.util.List;
-/**
- * Please, DO NOT use this interface in plugins until @Experimental is removed.
- * Probably this interface will be extended in future, which will break its implementations.
- *
- * @see com.siyeh.ig.callMatcher.CallMatcher
- */
-@ApiStatus.Experimental
+@ApiStatus.Internal
public interface UastCallMatcher {
@Contract("null -> false")
diff --git a/uast/uast-common/src/org/jetbrains/uast/baseElements/UResolvable.kt b/uast/uast-common/src/org/jetbrains/uast/baseElements/UResolvable.kt
index 082fe9d6f770..02392db914cd 100644
--- a/uast/uast-common/src/org/jetbrains/uast/baseElements/UResolvable.kt
+++ b/uast/uast-common/src/org/jetbrains/uast/baseElements/UResolvable.kt
@@ -29,8 +29,13 @@ interface UResolvable {
fun resolve(): PsiElement?
}
-@ApiStatus.Experimental
interface UMultiResolvable {
+ /**
+ * Returns multiple elements where the reference could be resolved.
+ * It could happen if there is an ambiguity in code: it is incomplete or resolve target cannot be statically determined
+ *
+ * @see [com.intellij.psi.PsiPolyVariantReference] as a similar entity for plain PSI
+ */
fun multiResolve(): Iterable
}
diff --git a/uast/uast-common/src/org/jetbrains/uast/expressions/UInjectionHost.kt b/uast/uast-common/src/org/jetbrains/uast/expressions/UInjectionHost.kt
index e657f891d4f1..f07c0f9f3e5e 100644
--- a/uast/uast-common/src/org/jetbrains/uast/expressions/UInjectionHost.kt
+++ b/uast/uast-common/src/org/jetbrains/uast/expressions/UInjectionHost.kt
@@ -12,7 +12,6 @@ import org.jetbrains.uast.UExpression
*
* @see com.intellij.psi.UastReferenceProvider
*/
-@ApiStatus.Experimental
interface UInjectionHost : UExpression {
val isString: Boolean