Rewritten PackageFragmentDescriptor to Kotlin.

This commit is contained in:
Evgeny Gerashchenko
2014-03-26 00:41:54 +04:00
parent 00c0c1acd1
commit 9ecd680fd4
7 changed files with 15 additions and 22 deletions
@@ -52,7 +52,7 @@ public object ClassSerializationUtil {
public fun getClassId(classDescriptor: ClassDescriptor): ClassId {
val owner = classDescriptor.getContainingDeclaration()
if (owner is PackageFragmentDescriptor) {
return ClassId(owner.getFqName(), FqNameUnsafe.topLevel(classDescriptor.getName()))
return ClassId(owner.fqName, FqNameUnsafe.topLevel(classDescriptor.getName()))
}
return getClassId(owner as ClassDescriptor).createNestedClassId(classDescriptor.getName())
}
@@ -30,7 +30,7 @@ public class CliSourcesMemberFilter(environment: JetCoreEnvironment): MemberFilt
override fun acceptPackagePartClass(container: PackageFragmentDescriptor, member: ProtoBuf.Callable, nameResolver: NameResolver): Boolean {
if (member.hasExtension(JavaProtoBuf.implClassName)) {
val shortName = nameResolver.getName(member.getExtension(JavaProtoBuf.implClassName)!!)
val fqName = container.getFqName().child(shortName)
val fqName = container.fqName.child(shortName)
val internalName = JvmClassName.byFqNameWithoutInnerClasses(fqName).getInternalName()
return internalName !in packagePartClassNames
}
@@ -58,7 +58,7 @@ public class LazyResolveBasedCache() : JavaResolverCache {
return resolveSession.findInPackageFragments(fqName) { packageFragmentDescriptor ->
ResolveSessionUtils.findByQualifiedName(
packageFragmentDescriptor.getMemberScope(),
fqName.tail(packageFragmentDescriptor.getFqName()))
fqName.tail(packageFragmentDescriptor.fqName))
}
}
@@ -77,7 +77,7 @@ public abstract class LazyJavaMemberScope(
}.toList())
if (_containingDeclaration is JavaPackageFragmentDescriptor) {
val klass = c.javaClassResolver.resolveClassByFqName(_containingDeclaration.getFqName().child(name))
val klass = c.javaClassResolver.resolveClassByFqName(_containingDeclaration.fqName.child(name))
if (klass is LazyJavaClassDescriptor && klass.getFunctionTypeForSamInterface() != null) {
functions.add(SingleAbstractMethodUtils.createSamConstructorFunction(_containingDeclaration, klass))
}
@@ -54,5 +54,5 @@ abstract class LazyJavaPackageFragment(
private val _memberScope = createMemberScope()
override fun getMemberScope(): LazyJavaPackageFragmentScope = _memberScope
override fun toString() = "lazy java package fragment: " + getFqName()
override fun toString() = "lazy java package fragment: " + fqName
}
@@ -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,21 +14,16 @@
* limitations under the License.
*/
package org.jetbrains.jet.lang.descriptors;
package org.jetbrains.jet.lang.descriptors
import org.jetbrains.annotations.NotNull;
import org.jetbrains.jet.lang.resolve.name.FqName;
import org.jetbrains.jet.lang.resolve.scopes.JetScope;
import org.jetbrains.jet.lang.resolve.name.FqName
import org.jetbrains.jet.lang.resolve.scopes.JetScope
public interface PackageFragmentDescriptor extends ClassOrPackageFragmentDescriptor {
public trait PackageFragmentDescriptor : ClassOrPackageFragmentDescriptor {
@NotNull
@Override
ModuleDescriptor getContainingDeclaration();
override fun getContainingDeclaration(): ModuleDescriptor
@NotNull
FqName getFqName();
val fqName: FqName
@NotNull
JetScope getMemberScope();
fun getMemberScope(): JetScope
}
@@ -23,8 +23,8 @@ import org.jetbrains.jet.lang.types.TypeSubstitutor
public abstract class PackageFragmentDescriptorImpl(
module: ModuleDescriptor,
val _fqName: FqName
) : DeclarationDescriptorNonRootImpl(module, Annotations.EMPTY, _fqName.shortNameOrSpecial()), PackageFragmentDescriptor {
override val fqName: FqName
) : DeclarationDescriptorNonRootImpl(module, Annotations.EMPTY, fqName.shortNameOrSpecial()), PackageFragmentDescriptor {
override fun substitute(substitutor: TypeSubstitutor): DeclarationDescriptor? = this
override fun <R, D> accept(visitor: DeclarationDescriptorVisitor<R, D>, data: D): R =
@@ -33,6 +33,4 @@ public abstract class PackageFragmentDescriptorImpl(
override fun getContainingDeclaration(): ModuleDescriptor {
return super<DeclarationDescriptorNonRootImpl>.getContainingDeclaration() as ModuleDescriptor
}
override fun getFqName(): FqName = _fqName
}