Use KotlinCacheService directly in IDELightClassGenerationSupport

This commit is contained in:
Pavel V. Talanov
2014-11-19 15:04:54 +03:00
parent 1991f0119e
commit 1f7c9f5693
@@ -71,7 +71,8 @@ public class IDELightClassGenerationSupport extends LightClassGenerationSupport
List<JetFile> sortedFiles = new ArrayList<JetFile>(files); List<JetFile> sortedFiles = new ArrayList<JetFile>(files);
Collections.sort(sortedFiles, jetFileComparator); Collections.sort(sortedFiles, jetFileComparator);
ResolveSessionForBodies session = ResolvePackage.getLazyResolveSession(sortedFiles.get(0)); JetFile file = sortedFiles.get(0);
ResolveSessionForBodies session = KotlinCacheService.OBJECT$.getInstance(file.getProject()).getLazyResolveSession(file);
forceResolvePackageDeclarations(files, session); forceResolvePackageDeclarations(files, session);
return new LightClassConstructionContext(session.getBindingContext(), session.getModuleDescriptor()); return new LightClassConstructionContext(session.getBindingContext(), session.getModuleDescriptor());
} }
@@ -79,7 +80,8 @@ public class IDELightClassGenerationSupport extends LightClassGenerationSupport
@NotNull @NotNull
@Override @Override
public LightClassConstructionContext getContextForClassOrObject(@NotNull JetClassOrObject classOrObject) { public LightClassConstructionContext getContextForClassOrObject(@NotNull JetClassOrObject classOrObject) {
ResolveSessionForBodies session = ResolvePackage.getLazyResolveSession(classOrObject); ResolveSessionForBodies session =
KotlinCacheService.OBJECT$.getInstance(classOrObject.getProject()).getLazyResolveSession(classOrObject);
if (classOrObject.isLocal()) { if (classOrObject.isLocal()) {
BindingContext bindingContext = session.resolveToElement(classOrObject); BindingContext bindingContext = session.resolveToElement(classOrObject);