Java package fragment's provider is JavaPackageFragmentProvider

This commit is contained in:
Andrey Breslav
2013-12-26 17:08:42 +04:00
parent 1f382ca744
commit 308e438671
2 changed files with 7 additions and 3 deletions
@@ -19,8 +19,13 @@ package org.jetbrains.jet.lang.resolve.java.descriptor;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.jet.lang.descriptors.PackageFragmentDescriptor;
import org.jetbrains.jet.lang.resolve.java.JavaDescriptorResolver;
import org.jetbrains.jet.lang.resolve.java.resolver.JavaPackageFragmentProvider;
public interface JavaPackageFragmentDescriptor extends PackageFragmentDescriptor {
@NotNull
@Override
JavaPackageFragmentProvider getProvider();
@NotNull
JavaDescriptorResolver getJavaDescriptorResolver();
@@ -25,7 +25,6 @@ import org.jetbrains.jet.lang.resolve.OverridingUtil;
import org.jetbrains.jet.lang.resolve.java.JvmAnnotationNames;
import org.jetbrains.jet.lang.resolve.java.descriptor.JavaClassDescriptor;
import org.jetbrains.jet.lang.resolve.java.descriptor.JavaPackageFragmentDescriptor;
import org.jetbrains.jet.lang.resolve.java.descriptor.JavaPackageFragmentDescriptorImpl;
import org.jetbrains.jet.lang.resolve.java.sam.SingleAbstractMethodUtils;
import org.jetbrains.jet.lang.resolve.java.structure.*;
import org.jetbrains.jet.lang.resolve.name.FqName;
@@ -272,10 +271,10 @@ public final class DescriptorResolverUtils {
@Nullable
public static JavaPackageFragmentDescriptor getPackageForCorrespondingJavaClass(@NotNull JavaClassDescriptor javaClass) {
PackageFragmentDescriptor packageFragment = DescriptorUtils.getParentOfType(javaClass, PackageFragmentDescriptor.class);
assert packageFragment instanceof JavaPackageFragmentDescriptorImpl :
assert packageFragment instanceof JavaPackageFragmentDescriptor :
"java class " + javaClass + " is under non-java fragment: " + packageFragment;
JavaPackageFragmentProvider provider = ((JavaPackageFragmentDescriptorImpl) packageFragment).getProvider();
JavaPackageFragmentProvider provider = ((JavaPackageFragmentDescriptor) packageFragment).getProvider();
return provider.getPackageFragment(getFqNameSafe(javaClass));
}