Add UL support for NoArg compiler plugin
This commit is contained in:
+15
-12
@@ -28,18 +28,21 @@ abstract class AnnotationBasedLightClassApplicabilityExtension(project: Project,
|
||||
cachedAnnotationsNames.getAnnotationNames(modifierListOwner)
|
||||
|
||||
override fun checkApplicabilityType(declaration: KtDeclaration, descriptor: Lazy<DeclarationDescriptor?>): LightClassApplicabilityType {
|
||||
if (!declaration.isOrdinaryClass || !declaration.isAnnotated) return UltraLightClass
|
||||
|
||||
if (cachedAnnotationsNames.getAnnotationNames(declaration).isEmpty()) return UltraLightClass
|
||||
|
||||
val descriptorValue = descriptor.value ?: return UltraLightClass
|
||||
|
||||
val classDescriptor = (descriptorValue as? ClassDescriptor)
|
||||
?: descriptorValue.containingDeclaration as? ClassDescriptor
|
||||
?: return UltraLightClass
|
||||
|
||||
val hasSpecialAnnotation = run { classDescriptor.hasSpecialAnnotation(declaration) }
|
||||
|
||||
return if (hasSpecialAnnotation) LightClass else UltraLightClass
|
||||
return UltraLightClass
|
||||
//
|
||||
// if (!declaration.isOrdinaryClass || !declaration.isAnnotated) return UltraLightClass
|
||||
//
|
||||
// if (cachedAnnotationsNames.getAnnotationNames(declaration).isEmpty()) return UltraLightClass
|
||||
//
|
||||
// val descriptorValue = descriptor.value ?: return UltraLightClass
|
||||
//
|
||||
// val classDescriptor = (descriptorValue as? ClassDescriptor)
|
||||
// ?: descriptorValue.containingDeclaration as? ClassDescriptor
|
||||
// ?: return UltraLightClass
|
||||
//
|
||||
// val hasSpecialAnnotation = run { classDescriptor.hasSpecialAnnotation(declaration) }
|
||||
//
|
||||
// return if (hasSpecialAnnotation) LightClass else UltraLightClass
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user