Evaluator: Do not report parsing error on empty block/expression (KT-11938)
This commit is contained in:
@@ -22,6 +22,7 @@ import com.intellij.lang.PsiBuilder;
|
||||
import com.intellij.lang.PsiBuilderFactory;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.psi.PsiElement;
|
||||
import kotlin.text.StringsKt;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.kotlin.parsing.KotlinParser;
|
||||
import org.jetbrains.kotlin.psi.stubs.elements.KtFileElementType;
|
||||
@@ -41,6 +42,10 @@ public class KtBlockCodeFragmentType extends KtFileElementType {
|
||||
|
||||
@Override
|
||||
protected ASTNode doParseContents(@NotNull ASTNode chameleon, @NotNull PsiElement psi) {
|
||||
if (StringsKt.isBlank(chameleon.getText())) {
|
||||
return null;
|
||||
}
|
||||
|
||||
Project project = psi.getProject();
|
||||
Language languageForParser = getLanguageForParser(psi);
|
||||
PsiBuilder builder = PsiBuilderFactory.getInstance().createBuilder(project, chameleon, null, languageForParser, chameleon.getChars());
|
||||
|
||||
@@ -22,6 +22,7 @@ import com.intellij.lang.PsiBuilder;
|
||||
import com.intellij.lang.PsiBuilderFactory;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.psi.PsiElement;
|
||||
import kotlin.text.StringsKt;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.kotlin.parsing.KotlinParser;
|
||||
import org.jetbrains.kotlin.psi.stubs.elements.KtFileElementType;
|
||||
@@ -41,6 +42,10 @@ public class KtExpressionCodeFragmentType extends KtFileElementType {
|
||||
|
||||
@Override
|
||||
protected ASTNode doParseContents(@NotNull ASTNode chameleon, @NotNull PsiElement psi) {
|
||||
if (StringsKt.isBlank(chameleon.getText())) {
|
||||
return null;
|
||||
}
|
||||
|
||||
Project project = psi.getProject();
|
||||
Language languageForParser = getLanguageForParser(psi);
|
||||
PsiBuilder builder = PsiBuilderFactory.getInstance().createBuilder(project, chameleon, null, languageForParser, chameleon.getChars());
|
||||
|
||||
Reference in New Issue
Block a user