LTDA: Make BuiltinsReferenceResolver compatible with Lazy TDA
This commit is contained in:
+8
-6
@@ -32,6 +32,7 @@ import com.intellij.psi.PsiManager;
|
|||||||
import com.intellij.util.Function;
|
import com.intellij.util.Function;
|
||||||
import com.intellij.util.PathUtil;
|
import com.intellij.util.PathUtil;
|
||||||
import com.intellij.util.containers.ContainerUtil;
|
import com.intellij.util.containers.ContainerUtil;
|
||||||
|
import kotlin.KotlinPackage;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
import org.jetbrains.annotations.Nullable;
|
import org.jetbrains.annotations.Nullable;
|
||||||
import org.jetbrains.annotations.TestOnly;
|
import org.jetbrains.annotations.TestOnly;
|
||||||
@@ -54,10 +55,7 @@ import org.jetbrains.jet.utils.UtilsPackage;
|
|||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.net.MalformedURLException;
|
import java.net.MalformedURLException;
|
||||||
import java.net.URL;
|
import java.net.URL;
|
||||||
import java.util.Collection;
|
import java.util.*;
|
||||||
import java.util.Collections;
|
|
||||||
import java.util.HashSet;
|
|
||||||
import java.util.Set;
|
|
||||||
|
|
||||||
import static org.jetbrains.jet.lang.resolve.DescriptorUtils.unwrapFakeOverride;
|
import static org.jetbrains.jet.lang.resolve.DescriptorUtils.unwrapFakeOverride;
|
||||||
|
|
||||||
@@ -67,7 +65,7 @@ public class BuiltInsReferenceResolver extends AbstractProjectComponent {
|
|||||||
|
|
||||||
private volatile BindingContext bindingContext;
|
private volatile BindingContext bindingContext;
|
||||||
private volatile Set<JetFile> builtInsSources;
|
private volatile Set<JetFile> builtInsSources;
|
||||||
private volatile MutablePackageFragmentDescriptor builtinsPackageFragment;
|
private volatile PackageFragmentDescriptor builtinsPackageFragment;
|
||||||
|
|
||||||
public BuiltInsReferenceResolver(Project project) {
|
public BuiltInsReferenceResolver(Project project) {
|
||||||
super(project);
|
super(project);
|
||||||
@@ -112,7 +110,11 @@ public class BuiltInsReferenceResolver extends AbstractProjectComponent {
|
|||||||
TopDownAnalyzer analyzer = injector.getTopDownAnalyzer();
|
TopDownAnalyzer analyzer = injector.getTopDownAnalyzer();
|
||||||
analyzer.analyzeFiles(topDownAnalysisParameters, jetBuiltInsFiles);
|
analyzer.analyzeFiles(topDownAnalysisParameters, jetBuiltInsFiles);
|
||||||
|
|
||||||
builtinsPackageFragment = analyzer.getPackageFragmentProvider().getOrCreateFragment(KotlinBuiltIns.BUILT_INS_PACKAGE_FQ_NAME);
|
List<PackageFragmentDescriptor> fragments =
|
||||||
|
module.getPackageFragmentProvider().getPackageFragments(KotlinBuiltIns.BUILT_INS_PACKAGE_FQ_NAME);
|
||||||
|
|
||||||
|
builtinsPackageFragment = KotlinPackage.single(fragments);
|
||||||
|
|
||||||
builtInsSources = Sets.newHashSet(jetBuiltInsFiles);
|
builtInsSources = Sets.newHashSet(jetBuiltInsFiles);
|
||||||
bindingContext = trace.getBindingContext();
|
bindingContext = trace.getBindingContext();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user