Include external modifier to serialized descriptors for classes and properties

This commit is contained in:
Alexey Andreev
2016-11-25 13:17:20 +03:00
parent a7ce770cb4
commit 7a6b510ddb
2 changed files with 8 additions and 4 deletions
@@ -57,7 +57,7 @@ class DescriptorSerializer private constructor(
val flags = Flags.getClassFlags( val flags = Flags.getClassFlags(
hasAnnotations(classDescriptor), classDescriptor.visibility, classDescriptor.modality, classDescriptor.kind, hasAnnotations(classDescriptor), classDescriptor.visibility, classDescriptor.modality, classDescriptor.kind,
classDescriptor.isInner, classDescriptor.isCompanionObject, classDescriptor.isData classDescriptor.isInner, classDescriptor.isCompanionObject, classDescriptor.isData, classDescriptor.isExternal
) )
if (flags != builder.flags) { if (flags != builder.flags) {
builder.flags = flags builder.flags = flags
@@ -170,7 +170,7 @@ class DescriptorSerializer private constructor(
val flags = Flags.getPropertyFlags( val flags = Flags.getPropertyFlags(
hasAnnotations, descriptor.visibility, descriptor.modality, descriptor.kind, descriptor.isVar, hasAnnotations, descriptor.visibility, descriptor.modality, descriptor.kind, descriptor.isVar,
hasGetter, hasSetter, hasConstant, isConst, lateInit hasGetter, hasSetter, hasConstant, isConst, lateInit, descriptor.isExternal
) )
if (flags != builder.flags) { if (flags != builder.flags) {
builder.flags = flags builder.flags = flags
@@ -86,7 +86,8 @@ public class Flags {
ClassKind kind, ClassKind kind,
boolean inner, boolean inner,
boolean isCompanionObject, boolean isCompanionObject,
boolean isData boolean isData,
boolean isExternal
) { ) {
return HAS_ANNOTATIONS.toFlags(hasAnnotations) return HAS_ANNOTATIONS.toFlags(hasAnnotations)
| MODALITY.toFlags(modality(modality)) | MODALITY.toFlags(modality(modality))
@@ -94,6 +95,7 @@ public class Flags {
| CLASS_KIND.toFlags(classKind(kind, isCompanionObject)) | CLASS_KIND.toFlags(classKind(kind, isCompanionObject))
| IS_INNER.toFlags(inner) | IS_INNER.toFlags(inner)
| IS_DATA.toFlags(isData) | IS_DATA.toFlags(isData)
| IS_EXTERNAL_CLASS.toFlags(isExternal)
; ;
} }
@@ -163,7 +165,8 @@ public class Flags {
boolean hasSetter, boolean hasSetter,
boolean hasConstant, boolean hasConstant,
boolean isConst, boolean isConst,
boolean lateInit boolean lateInit,
boolean isExternal
) { ) {
return HAS_ANNOTATIONS.toFlags(hasAnnotations) return HAS_ANNOTATIONS.toFlags(hasAnnotations)
| VISIBILITY.toFlags(visibility(visibility)) | VISIBILITY.toFlags(visibility(visibility))
@@ -175,6 +178,7 @@ public class Flags {
| IS_CONST.toFlags(isConst) | IS_CONST.toFlags(isConst)
| IS_LATEINIT.toFlags(lateInit) | IS_LATEINIT.toFlags(lateInit)
| HAS_CONSTANT.toFlags(hasConstant) | HAS_CONSTANT.toFlags(hasConstant)
| IS_EXTERNAL_PROPERTY.toFlags(isExternal)
; ;
} }