Write annotations with RetensionPolicy(SOURCE) to light classes

This commit is contained in:
Yan Zhulanow
2015-06-16 18:38:06 +03:00
parent 17e6b8f014
commit fee1726dfb
2 changed files with 5 additions and 1 deletions
@@ -183,7 +183,7 @@ public abstract class AnnotationCodegen {
ClassifierDescriptor classifierDescriptor = annotationDescriptor.getType().getConstructor().getDeclarationDescriptor(); ClassifierDescriptor classifierDescriptor = annotationDescriptor.getType().getConstructor().getDeclarationDescriptor();
assert classifierDescriptor != null : "Annotation descriptor has no class: " + annotationDescriptor; assert classifierDescriptor != null : "Annotation descriptor has no class: " + annotationDescriptor;
RetentionPolicy rp = getRetentionPolicy(classifierDescriptor); RetentionPolicy rp = getRetentionPolicy(classifierDescriptor);
if (rp == RetentionPolicy.SOURCE) { if (rp == RetentionPolicy.SOURCE && typeMapper.getClassBuilderMode() != ClassBuilderMode.LIGHT_CLASSES) {
return null; return null;
} }
@@ -792,6 +792,10 @@ public class JetTypeMapper {
return result; return result;
} }
public ClassBuilderMode getClassBuilderMode() {
return classBuilderMode;
}
private static boolean isConstructor(@NotNull Method method) { private static boolean isConstructor(@NotNull Method method) {
return "<init>".equals(method.getName()); return "<init>".equals(method.getName());
} }