Refactor: Extract isObject with a new semantic
This commit is contained in:
@@ -243,7 +243,7 @@ public class ModifiersChecker {
|
|||||||
if (DescriptorUtils.isTrait(containingDeclaration)) {
|
if (DescriptorUtils.isTrait(containingDeclaration)) {
|
||||||
return InnerModifierCheckResult.IN_TRAIT;
|
return InnerModifierCheckResult.IN_TRAIT;
|
||||||
}
|
}
|
||||||
else if (DescriptorUtils.isDefaultObject(containingDeclaration) || DescriptorUtils.isNonDefaultObject(containingDeclaration)) {
|
else if (DescriptorUtils.isObject(containingDeclaration)) {
|
||||||
return InnerModifierCheckResult.IN_OBJECT;
|
return InnerModifierCheckResult.IN_OBJECT;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
|||||||
+1
-2
@@ -48,8 +48,7 @@ public class ConstantExpressionEvaluator private (val trace: BindingTrace) : Jet
|
|||||||
if (descriptor.isVar()) {
|
if (descriptor.isVar()) {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
if (DescriptorUtils.isNonDefaultObject(descriptor.getContainingDeclaration()) ||
|
if (DescriptorUtils.isObject(descriptor.getContainingDeclaration()) ||
|
||||||
DescriptorUtils.isDefaultObject(descriptor.getContainingDeclaration()) ||
|
|
||||||
DescriptorUtils.isStaticDeclaration(descriptor)) {
|
DescriptorUtils.isStaticDeclaration(descriptor)) {
|
||||||
val returnType = descriptor.getType()
|
val returnType = descriptor.getType()
|
||||||
return KotlinBuiltIns.isPrimitiveType(returnType) || KotlinBuiltIns.isString(returnType)
|
return KotlinBuiltIns.isPrimitiveType(returnType) || KotlinBuiltIns.isString(returnType)
|
||||||
|
|||||||
+2
-1
@@ -49,6 +49,7 @@ import java.util.jar.JarFile;
|
|||||||
import java.util.zip.ZipOutputStream;
|
import java.util.zip.ZipOutputStream;
|
||||||
|
|
||||||
import static org.jetbrains.kotlin.resolve.DescriptorUtils.isNonDefaultObject;
|
import static org.jetbrains.kotlin.resolve.DescriptorUtils.isNonDefaultObject;
|
||||||
|
import static org.jetbrains.kotlin.resolve.DescriptorUtils.isObject;
|
||||||
import static org.jetbrains.kotlin.test.util.RecursiveDescriptorComparator.validateAndCompareDescriptorWithFile;
|
import static org.jetbrains.kotlin.test.util.RecursiveDescriptorComparator.validateAndCompareDescriptorWithFile;
|
||||||
|
|
||||||
public class CompileKotlinAgainstCustomBinariesTest extends TestCaseWithTmpdir {
|
public class CompileKotlinAgainstCustomBinariesTest extends TestCaseWithTmpdir {
|
||||||
@@ -144,7 +145,7 @@ public class CompileKotlinAgainstCustomBinariesTest extends TestCaseWithTmpdir {
|
|||||||
assertEquals(allDescriptors.toString(), 2, allDescriptors.size());
|
assertEquals(allDescriptors.toString(), 2, allDescriptors.size());
|
||||||
for (DeclarationDescriptor descriptor : allDescriptors) {
|
for (DeclarationDescriptor descriptor : allDescriptors) {
|
||||||
assertTrue("Wrong name: " + descriptor, descriptor.getName().asString().equals("Lol"));
|
assertTrue("Wrong name: " + descriptor, descriptor.getName().asString().equals("Lol"));
|
||||||
assertTrue("Should be an object: " + descriptor, isNonDefaultObject(descriptor));
|
assertTrue("Should be an object: " + descriptor, isObject(descriptor));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -252,6 +252,10 @@ public class DescriptorUtils {
|
|||||||
return isKindOf(descriptor, ClassKind.OBJECT);
|
return isKindOf(descriptor, ClassKind.OBJECT);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static boolean isObject(@NotNull DeclarationDescriptor descriptor) {
|
||||||
|
return isDefaultObject(descriptor) || isNonDefaultObject(descriptor);
|
||||||
|
}
|
||||||
|
|
||||||
public static boolean isEnumEntry(@NotNull DeclarationDescriptor descriptor) {
|
public static boolean isEnumEntry(@NotNull DeclarationDescriptor descriptor) {
|
||||||
return isKindOf(descriptor, ClassKind.ENUM_ENTRY);
|
return isKindOf(descriptor, ClassKind.ENUM_ENTRY);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user