Rewrite JavaDescriptorResolver to Kotlin

This commit is contained in:
Pavel V. Talanov
2014-05-20 14:31:52 +04:00
parent 1de3ba9265
commit 1488584acf
2 changed files with 17 additions and 40 deletions
@@ -37,7 +37,6 @@ import org.jetbrains.jet.lang.resolve.BindingTraceContext;
import org.jetbrains.jet.lang.resolve.ImportPath;
import org.jetbrains.jet.lang.resolve.TypeResolver;
import org.jetbrains.jet.lang.resolve.calls.autocasts.DataFlowInfo;
import org.jetbrains.jet.lang.resolve.java.JavaDescriptorResolver;
import org.jetbrains.jet.lang.resolve.lazy.LazyResolveTestUtil;
import org.jetbrains.jet.lang.resolve.name.FqName;
import org.jetbrains.jet.lang.resolve.scopes.*;
@@ -597,8 +596,7 @@ public class JetTypeCheckerTest extends JetLiteFixture {
scope, scope.getContainingDeclaration(), RedeclarationHandler.DO_NOTHING, "JetTypeCheckerTest.addImports");
InjectorForJavaDescriptorResolver injector =
InjectorForJavaDescriptorResolverUtil.create(getProject(), new BindingTraceContext(), true);
JavaDescriptorResolver javaDescriptorResolver = injector.getJavaDescriptorResolver();
ModuleDescriptor module = javaDescriptorResolver.getModule();
ModuleDescriptor module = injector.getModule();
for (ImportPath defaultImport : module.getDefaultImports()) {
writableScope.importScope(module.getPackage(defaultImport.fqnPart()).getMemberScope());
}
@@ -1,5 +1,5 @@
/*
* Copyright 2010-2013 JetBrains s.r.o.
* Copyright 2010-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -14,47 +14,26 @@
* limitations under the License.
*/
package org.jetbrains.jet.lang.resolve.java;
package org.jetbrains.jet.lang.resolve.java
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.jet.lang.descriptors.ClassDescriptor;
import org.jetbrains.jet.lang.descriptors.ModuleDescriptor;
import org.jetbrains.jet.lang.descriptors.PackageFragmentDescriptor;
import org.jetbrains.jet.lang.descriptors.PackageFragmentProvider;
import org.jetbrains.jet.lang.resolve.java.lazy.LazyJavaPackageFragmentProvider;
import org.jetbrains.jet.lang.resolve.java.structure.JavaClass;
import org.jetbrains.jet.lang.resolve.name.Name;
import org.jetbrains.jet.lang.descriptors.ClassDescriptor
import org.jetbrains.jet.lang.descriptors.ModuleDescriptor
import org.jetbrains.jet.lang.descriptors.PackageFragmentDescriptor
import org.jetbrains.jet.lang.descriptors.PackageFragmentProvider
import org.jetbrains.jet.lang.resolve.java.lazy.LazyJavaPackageFragmentProvider
import org.jetbrains.jet.lang.resolve.java.structure.JavaClass
import org.jetbrains.jet.lang.resolve.name.Name
public class JavaDescriptorResolver {
public static final Name JAVA_ROOT = Name.special("<java_root>");
private final ModuleDescriptor module;
private final LazyJavaPackageFragmentProvider lazyJavaPackageFragmentProvider;
public JavaDescriptorResolver(@NotNull LazyJavaPackageFragmentProvider provider, @NotNull ModuleDescriptor module) {
lazyJavaPackageFragmentProvider = provider;
this.module = module;
public class JavaDescriptorResolver(public val packageFragmentProvider: LazyJavaPackageFragmentProvider, private val module: ModuleDescriptor) {
public fun resolveClass(javaClass: JavaClass): ClassDescriptor? {
return packageFragmentProvider.getClass(javaClass)
}
@NotNull
public ModuleDescriptor getModule() {
return module;
public fun getPackageFragment(javaClass: JavaClass): PackageFragmentDescriptor? {
return packageFragmentProvider.getPackageFragment(javaClass)
}
@NotNull
public PackageFragmentProvider getPackageFragmentProvider() {
return lazyJavaPackageFragmentProvider;
}
@Nullable
public ClassDescriptor resolveClass(@NotNull JavaClass javaClass) {
return lazyJavaPackageFragmentProvider.getClass(javaClass);
}
@Nullable
public PackageFragmentDescriptor getPackageFragment(@NotNull JavaClass javaClass) {
return lazyJavaPackageFragmentProvider.getPackageFragment(javaClass);
class object {
public val JAVA_ROOT: Name = Name.special("<java_root>")
}
}