more daemon reactivity during contract inference

This commit is contained in:
peter
2018-02-07 18:11:56 +01:00
parent 9cab80dc20
commit db9ae01fae
2 changed files with 4 additions and 3 deletions
@@ -17,6 +17,7 @@ package com.intellij.psi.impl.source;
import com.intellij.lang.LighterAST;
import com.intellij.lang.LighterASTNode;
import com.intellij.openapi.progress.ProgressManager;
import com.intellij.psi.JavaTokenType;
import com.intellij.psi.impl.source.tree.ElementType;
import com.intellij.psi.impl.source.tree.LightTreeUtil;
@@ -59,6 +60,7 @@ public class FileLocalResolver {
boolean passedClass = false;
LighterASTNode lastParent = ref;
while (true) {
ProgressManager.checkCanceled();
LighterASTNode scope = myTree.getParent(lastParent);
if (scope == null) return LightResolveResult.NON_LOCAL;
@@ -20,13 +20,11 @@ import com.intellij.lang.LighterAST;
import com.intellij.lang.LighterASTNode;
import com.intellij.lang.LighterASTTokenNode;
import com.intellij.lang.LighterLazyParseableNode;
import com.intellij.util.Function;
import com.intellij.openapi.progress.ProgressManager;
import com.intellij.util.WalkingState;
import com.intellij.util.containers.ContainerUtil;
import com.intellij.util.containers.Stack;
import org.jetbrains.annotations.NotNull;
import java.util.Collections;
import java.util.List;
public abstract class RecursiveLighterASTNodeWalkingVisitor extends LighterASTNodeVisitor {
@@ -97,6 +95,7 @@ public abstract class RecursiveLighterASTNodeWalkingVisitor extends LighterASTNo
@Override
public void visit(@NotNull IndexedLighterASTNode iNode) {
ProgressManager.checkCanceled();
LighterASTNode element = iNode.node;
RecursiveLighterASTNodeWalkingVisitor visitor = RecursiveLighterASTNodeWalkingVisitor.this;
if (element instanceof LighterLazyParseableNode) {