Rename has[Header|Impl]Modifier() to has[Expect|Actual]Modifier()
This commit is contained in:
committed by
Mikhail Glukhikh
parent
0bf7dc3e0c
commit
4dc47c734c
@@ -99,7 +99,7 @@ public class PackageCodegenImpl implements PackageCodegen {
|
|||||||
List<KtClassOrObject> classOrObjects = new ArrayList<>();
|
List<KtClassOrObject> classOrObjects = new ArrayList<>();
|
||||||
|
|
||||||
for (KtDeclaration declaration : file.getDeclarations()) {
|
for (KtDeclaration declaration : file.getDeclarations()) {
|
||||||
if (PsiUtilsKt.hasHeaderModifier(declaration)) continue;
|
if (PsiUtilsKt.hasExpectModifier(declaration)) continue;
|
||||||
|
|
||||||
if (declaration instanceof KtProperty || declaration instanceof KtNamedFunction || declaration instanceof KtTypeAlias) {
|
if (declaration instanceof KtProperty || declaration instanceof KtNamedFunction || declaration instanceof KtTypeAlias) {
|
||||||
generatePackagePart = true;
|
generatePackagePart = true;
|
||||||
|
|||||||
@@ -89,7 +89,7 @@ public class PackagePartCodegen extends MemberCodegen<KtFile> {
|
|||||||
@Override
|
@Override
|
||||||
protected void generateBody() {
|
protected void generateBody() {
|
||||||
for (KtDeclaration declaration : element.getDeclarations()) {
|
for (KtDeclaration declaration : element.getDeclarations()) {
|
||||||
if (PsiUtilsKt.hasHeaderModifier(declaration)) continue;
|
if (PsiUtilsKt.hasExpectModifier(declaration)) continue;
|
||||||
|
|
||||||
if (declaration instanceof KtNamedFunction || declaration instanceof KtProperty || declaration instanceof KtTypeAlias) {
|
if (declaration instanceof KtNamedFunction || declaration instanceof KtProperty || declaration instanceof KtTypeAlias) {
|
||||||
genSimpleMember(declaration);
|
genSimpleMember(declaration);
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ import org.jetbrains.kotlin.idea.KotlinLanguage
|
|||||||
import org.jetbrains.kotlin.name.FqName
|
import org.jetbrains.kotlin.name.FqName
|
||||||
import org.jetbrains.kotlin.parsing.KotlinParserDefinition
|
import org.jetbrains.kotlin.parsing.KotlinParserDefinition
|
||||||
import org.jetbrains.kotlin.psi.psiUtil.getChildOfType
|
import org.jetbrains.kotlin.psi.psiUtil.getChildOfType
|
||||||
import org.jetbrains.kotlin.psi.psiUtil.hasHeaderModifier
|
import org.jetbrains.kotlin.psi.psiUtil.hasExpectModifier
|
||||||
import org.jetbrains.kotlin.psi.stubs.KotlinFileStub
|
import org.jetbrains.kotlin.psi.stubs.KotlinFileStub
|
||||||
import org.jetbrains.kotlin.psi.stubs.elements.KtPlaceHolderStubElementType
|
import org.jetbrains.kotlin.psi.stubs.elements.KtPlaceHolderStubElementType
|
||||||
import org.jetbrains.kotlin.psi.stubs.elements.KtStubElementTypes
|
import org.jetbrains.kotlin.psi.stubs.elements.KtStubElementTypes
|
||||||
@@ -171,7 +171,7 @@ open class KtFile(viewProvider: FileViewProvider, val isCompiled: Boolean) :
|
|||||||
(it is KtProperty ||
|
(it is KtProperty ||
|
||||||
it is KtNamedFunction ||
|
it is KtNamedFunction ||
|
||||||
it is KtScript ||
|
it is KtScript ||
|
||||||
it is KtTypeAlias) && !it.hasHeaderModifier()
|
it is KtTypeAlias) && !it.hasExpectModifier()
|
||||||
}
|
}
|
||||||
|
|
||||||
hasTopLeveCallables = result
|
hasTopLeveCallables = result
|
||||||
|
|||||||
@@ -383,9 +383,9 @@ fun PsiElement.before(element: PsiElement) = textRange.endOffset <= element.text
|
|||||||
|
|
||||||
inline fun <reified T : PsiElement> PsiElement.getLastParentOfTypeInRow() = parents.takeWhile { it is T }.lastOrNull() as? T
|
inline fun <reified T : PsiElement> PsiElement.getLastParentOfTypeInRow() = parents.takeWhile { it is T }.lastOrNull() as? T
|
||||||
|
|
||||||
fun KtModifierListOwner.hasHeaderModifier() = hasModifier(KtTokens.HEADER_KEYWORD)
|
fun KtModifierListOwner.hasExpectModifier() = hasModifier(KtTokens.HEADER_KEYWORD)
|
||||||
fun KtModifierList.hasHeaderModifier() = hasModifier(KtTokens.HEADER_KEYWORD)
|
fun KtModifierList.hasExpectModifier() = hasModifier(KtTokens.HEADER_KEYWORD)
|
||||||
|
|
||||||
fun KtModifierListOwner.hasImplModifier() = hasModifier(KtTokens.IMPL_KEYWORD)
|
fun KtModifierListOwner.hasActualModifier() = hasModifier(KtTokens.IMPL_KEYWORD)
|
||||||
fun KtModifierList.hasImplModifier() = hasModifier(KtTokens.IMPL_KEYWORD)
|
fun KtModifierList.hasActualModifier() = hasModifier(KtTokens.IMPL_KEYWORD)
|
||||||
|
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ import org.jetbrains.kotlin.diagnostics.Errors
|
|||||||
import org.jetbrains.kotlin.diagnostics.Errors.*
|
import org.jetbrains.kotlin.diagnostics.Errors.*
|
||||||
import org.jetbrains.kotlin.lexer.KtTokens
|
import org.jetbrains.kotlin.lexer.KtTokens
|
||||||
import org.jetbrains.kotlin.psi.*
|
import org.jetbrains.kotlin.psi.*
|
||||||
import org.jetbrains.kotlin.psi.psiUtil.hasImplModifier
|
import org.jetbrains.kotlin.psi.psiUtil.hasActualModifier
|
||||||
import org.jetbrains.kotlin.psi.psiUtil.visibilityModifier
|
import org.jetbrains.kotlin.psi.psiUtil.visibilityModifier
|
||||||
import org.jetbrains.kotlin.resolve.BindingContext.*
|
import org.jetbrains.kotlin.resolve.BindingContext.*
|
||||||
import org.jetbrains.kotlin.resolve.DescriptorUtils.classCanHaveAbstractMembers
|
import org.jetbrains.kotlin.resolve.DescriptorUtils.classCanHaveAbstractMembers
|
||||||
@@ -166,7 +166,7 @@ class DeclarationsChecker(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (declaration.hasImplModifier()) {
|
if (declaration.hasActualModifier()) {
|
||||||
checkImplTypeAlias(declaration, typeAliasDescriptor)
|
checkImplTypeAlias(declaration, typeAliasDescriptor)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -874,9 +874,9 @@ public class DescriptorResolver {
|
|||||||
KotlinSourceElementKt.toSourceElement(variableDeclaration),
|
KotlinSourceElementKt.toSourceElement(variableDeclaration),
|
||||||
modifierList != null && modifierList.hasModifier(KtTokens.LATEINIT_KEYWORD),
|
modifierList != null && modifierList.hasModifier(KtTokens.LATEINIT_KEYWORD),
|
||||||
modifierList != null && modifierList.hasModifier(KtTokens.CONST_KEYWORD),
|
modifierList != null && modifierList.hasModifier(KtTokens.CONST_KEYWORD),
|
||||||
modifierList != null && PsiUtilsKt.hasHeaderModifier(modifierList) && container instanceof PackageFragmentDescriptor ||
|
modifierList != null && PsiUtilsKt.hasExpectModifier(modifierList) && container instanceof PackageFragmentDescriptor ||
|
||||||
container instanceof ClassDescriptor && ((ClassDescriptor) container).isHeader(),
|
container instanceof ClassDescriptor && ((ClassDescriptor) container).isHeader(),
|
||||||
modifierList != null && PsiUtilsKt.hasImplModifier(modifierList),
|
modifierList != null && PsiUtilsKt.hasActualModifier(modifierList),
|
||||||
modifierList != null && modifierList.hasModifier(KtTokens.EXTERNAL_KEYWORD),
|
modifierList != null && modifierList.hasModifier(KtTokens.EXTERNAL_KEYWORD),
|
||||||
propertyInfo.getHasDelegate()
|
propertyInfo.getHasDelegate()
|
||||||
);
|
);
|
||||||
@@ -1202,7 +1202,7 @@ public class DescriptorResolver {
|
|||||||
false,
|
false,
|
||||||
false,
|
false,
|
||||||
classDescriptor.isHeader(),
|
classDescriptor.isHeader(),
|
||||||
modifierList != null && PsiUtilsKt.hasImplModifier(modifierList),
|
modifierList != null && PsiUtilsKt.hasActualModifier(modifierList),
|
||||||
false,
|
false,
|
||||||
false
|
false
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -33,8 +33,8 @@ import org.jetbrains.kotlin.diagnostics.Errors.*
|
|||||||
import org.jetbrains.kotlin.lexer.KtTokens
|
import org.jetbrains.kotlin.lexer.KtTokens
|
||||||
import org.jetbrains.kotlin.name.Name
|
import org.jetbrains.kotlin.name.Name
|
||||||
import org.jetbrains.kotlin.psi.*
|
import org.jetbrains.kotlin.psi.*
|
||||||
import org.jetbrains.kotlin.psi.psiUtil.hasHeaderModifier
|
import org.jetbrains.kotlin.psi.psiUtil.hasExpectModifier
|
||||||
import org.jetbrains.kotlin.psi.psiUtil.hasImplModifier
|
import org.jetbrains.kotlin.psi.psiUtil.hasActualModifier
|
||||||
import org.jetbrains.kotlin.resolve.DescriptorResolver.getDefaultModality
|
import org.jetbrains.kotlin.resolve.DescriptorResolver.getDefaultModality
|
||||||
import org.jetbrains.kotlin.resolve.DescriptorResolver.getDefaultVisibility
|
import org.jetbrains.kotlin.resolve.DescriptorResolver.getDefaultVisibility
|
||||||
import org.jetbrains.kotlin.resolve.DescriptorUtils.getDispatchReceiverParameterIfNeeded
|
import org.jetbrains.kotlin.resolve.DescriptorUtils.getDispatchReceiverParameterIfNeeded
|
||||||
@@ -184,9 +184,9 @@ class FunctionDescriptorResolver(
|
|||||||
functionDescriptor.isInline = function.hasModifier(KtTokens.INLINE_KEYWORD)
|
functionDescriptor.isInline = function.hasModifier(KtTokens.INLINE_KEYWORD)
|
||||||
functionDescriptor.isTailrec = function.hasModifier(KtTokens.TAILREC_KEYWORD)
|
functionDescriptor.isTailrec = function.hasModifier(KtTokens.TAILREC_KEYWORD)
|
||||||
functionDescriptor.isSuspend = function.hasModifier(KtTokens.SUSPEND_KEYWORD)
|
functionDescriptor.isSuspend = function.hasModifier(KtTokens.SUSPEND_KEYWORD)
|
||||||
functionDescriptor.isHeader = container is PackageFragmentDescriptor && function.hasHeaderModifier() ||
|
functionDescriptor.isHeader = container is PackageFragmentDescriptor && function.hasExpectModifier() ||
|
||||||
container is ClassDescriptor && container.isHeader
|
container is ClassDescriptor && container.isHeader
|
||||||
functionDescriptor.isImpl = function.hasImplModifier()
|
functionDescriptor.isImpl = function.hasActualModifier()
|
||||||
|
|
||||||
receiverType?.let { ForceResolveUtil.forceResolveAllContents(it.annotations) }
|
receiverType?.let { ForceResolveUtil.forceResolveAllContents(it.annotations) }
|
||||||
for (valueParameterDescriptor in valueParameterDescriptors) {
|
for (valueParameterDescriptor in valueParameterDescriptors) {
|
||||||
|
|||||||
+2
-2
@@ -28,7 +28,7 @@ import org.jetbrains.kotlin.name.Name
|
|||||||
import org.jetbrains.kotlin.psi.KtConstructor
|
import org.jetbrains.kotlin.psi.KtConstructor
|
||||||
import org.jetbrains.kotlin.psi.KtDeclaration
|
import org.jetbrains.kotlin.psi.KtDeclaration
|
||||||
import org.jetbrains.kotlin.psi.KtElement
|
import org.jetbrains.kotlin.psi.KtElement
|
||||||
import org.jetbrains.kotlin.psi.psiUtil.hasImplModifier
|
import org.jetbrains.kotlin.psi.psiUtil.hasActualModifier
|
||||||
import org.jetbrains.kotlin.resolve.BindingContext
|
import org.jetbrains.kotlin.resolve.BindingContext
|
||||||
import org.jetbrains.kotlin.resolve.DescriptorToSourceUtils
|
import org.jetbrains.kotlin.resolve.DescriptorToSourceUtils
|
||||||
import org.jetbrains.kotlin.resolve.DescriptorUtils
|
import org.jetbrains.kotlin.resolve.DescriptorUtils
|
||||||
@@ -127,7 +127,7 @@ object HeaderImplDeclarationChecker : DeclarationChecker {
|
|||||||
// TODO: use common module here
|
// TODO: use common module here
|
||||||
val compatibility = findHeaderForImpl(descriptor, descriptor.module) ?: return
|
val compatibility = findHeaderForImpl(descriptor, descriptor.module) ?: return
|
||||||
|
|
||||||
val hasImplModifier = descriptor.isImpl && reportOn.hasImplModifier()
|
val hasImplModifier = descriptor.isImpl && reportOn.hasActualModifier()
|
||||||
if (!hasImplModifier) {
|
if (!hasImplModifier) {
|
||||||
if (Compatible !in compatibility) return
|
if (Compatible !in compatibility) return
|
||||||
|
|
||||||
|
|||||||
+2
-2
@@ -166,9 +166,9 @@ public class LazyClassDescriptor extends ClassDescriptorBase implements ClassDes
|
|||||||
|
|
||||||
this.isInner = modifierList != null && modifierList.hasModifier(INNER_KEYWORD) && !isIllegalInner(this);
|
this.isInner = modifierList != null && modifierList.hasModifier(INNER_KEYWORD) && !isIllegalInner(this);
|
||||||
this.isData = modifierList != null && modifierList.hasModifier(KtTokens.DATA_KEYWORD);
|
this.isData = modifierList != null && modifierList.hasModifier(KtTokens.DATA_KEYWORD);
|
||||||
this.isImpl = modifierList != null && PsiUtilsKt.hasImplModifier(modifierList);
|
this.isImpl = modifierList != null && PsiUtilsKt.hasActualModifier(modifierList);
|
||||||
|
|
||||||
this.isHeader = modifierList != null && PsiUtilsKt.hasHeaderModifier(modifierList) ||
|
this.isHeader = modifierList != null && PsiUtilsKt.hasExpectModifier(modifierList) ||
|
||||||
containingDeclaration instanceof ClassDescriptor && ((ClassDescriptor) containingDeclaration).isHeader();
|
containingDeclaration instanceof ClassDescriptor && ((ClassDescriptor) containingDeclaration).isHeader();
|
||||||
|
|
||||||
// Annotation entries are taken from both own annotations (if any) and object literal annotations (if any)
|
// Annotation entries are taken from both own annotations (if any) and object literal annotations (if any)
|
||||||
|
|||||||
+2
-2
@@ -22,7 +22,7 @@ import org.jetbrains.kotlin.descriptors.impl.AbstractTypeAliasDescriptor
|
|||||||
import org.jetbrains.kotlin.descriptors.impl.TypeAliasConstructorDescriptor
|
import org.jetbrains.kotlin.descriptors.impl.TypeAliasConstructorDescriptor
|
||||||
import org.jetbrains.kotlin.name.Name
|
import org.jetbrains.kotlin.name.Name
|
||||||
import org.jetbrains.kotlin.psi.KtTypeAlias
|
import org.jetbrains.kotlin.psi.KtTypeAlias
|
||||||
import org.jetbrains.kotlin.psi.psiUtil.hasImplModifier
|
import org.jetbrains.kotlin.psi.psiUtil.hasActualModifier
|
||||||
import org.jetbrains.kotlin.resolve.BindingTrace
|
import org.jetbrains.kotlin.resolve.BindingTrace
|
||||||
import org.jetbrains.kotlin.resolve.source.getPsi
|
import org.jetbrains.kotlin.resolve.source.getPsi
|
||||||
import org.jetbrains.kotlin.storage.NotNullLazyValue
|
import org.jetbrains.kotlin.storage.NotNullLazyValue
|
||||||
@@ -49,7 +49,7 @@ class LazyTypeAliasDescriptor(
|
|||||||
private lateinit var expandedTypeImpl: NotNullLazyValue<SimpleType>
|
private lateinit var expandedTypeImpl: NotNullLazyValue<SimpleType>
|
||||||
private lateinit var defaultTypeImpl: NotNullLazyValue<SimpleType>
|
private lateinit var defaultTypeImpl: NotNullLazyValue<SimpleType>
|
||||||
private lateinit var classDescriptorImpl: NullableLazyValue<ClassDescriptor>
|
private lateinit var classDescriptorImpl: NullableLazyValue<ClassDescriptor>
|
||||||
private val isImpl = (source.getPsi() as? KtTypeAlias)?.hasImplModifier() == true
|
private val isImpl = (source.getPsi() as? KtTypeAlias)?.hasActualModifier() == true
|
||||||
|
|
||||||
override val underlyingType: SimpleType get() = underlyingTypeImpl()
|
override val underlyingType: SimpleType get() = underlyingTypeImpl()
|
||||||
override val expandedType: SimpleType get() = expandedTypeImpl()
|
override val expandedType: SimpleType get() = expandedTypeImpl()
|
||||||
|
|||||||
+2
-2
@@ -58,7 +58,7 @@ import org.jetbrains.kotlin.platform.JavaToKotlinClassMap
|
|||||||
import org.jetbrains.kotlin.psi.*
|
import org.jetbrains.kotlin.psi.*
|
||||||
import org.jetbrains.kotlin.psi.debugText.getDebugText
|
import org.jetbrains.kotlin.psi.debugText.getDebugText
|
||||||
import org.jetbrains.kotlin.psi.psiUtil.getElementTextWithContext
|
import org.jetbrains.kotlin.psi.psiUtil.getElementTextWithContext
|
||||||
import org.jetbrains.kotlin.psi.psiUtil.hasHeaderModifier
|
import org.jetbrains.kotlin.psi.psiUtil.hasExpectModifier
|
||||||
import org.jetbrains.kotlin.psi.stubs.KotlinClassOrObjectStub
|
import org.jetbrains.kotlin.psi.stubs.KotlinClassOrObjectStub
|
||||||
import org.jetbrains.kotlin.resolve.DescriptorUtils
|
import org.jetbrains.kotlin.resolve.DescriptorUtils
|
||||||
import java.util.*
|
import java.util.*
|
||||||
@@ -334,7 +334,7 @@ abstract class KtLightClassForSourceDeclaration(protected val classOrObject: KtC
|
|||||||
|
|
||||||
|
|
||||||
fun create(classOrObject: KtClassOrObject): KtLightClassForSourceDeclaration? {
|
fun create(classOrObject: KtClassOrObject): KtLightClassForSourceDeclaration? {
|
||||||
if (classOrObject.hasHeaderModifier()) {
|
if (classOrObject.hasExpectModifier()) {
|
||||||
return null
|
return null
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+3
-3
@@ -31,7 +31,7 @@ import org.jetbrains.kotlin.idea.project.TargetPlatformDetector
|
|||||||
import org.jetbrains.kotlin.psi.KtClassOrObject
|
import org.jetbrains.kotlin.psi.KtClassOrObject
|
||||||
import org.jetbrains.kotlin.psi.KtDeclaration
|
import org.jetbrains.kotlin.psi.KtDeclaration
|
||||||
import org.jetbrains.kotlin.psi.KtPsiUtil
|
import org.jetbrains.kotlin.psi.KtPsiUtil
|
||||||
import org.jetbrains.kotlin.psi.psiUtil.hasHeaderModifier
|
import org.jetbrains.kotlin.psi.psiUtil.hasExpectModifier
|
||||||
import org.jetbrains.kotlin.resolve.BindingTraceContext
|
import org.jetbrains.kotlin.resolve.BindingTraceContext
|
||||||
import org.jetbrains.kotlin.resolve.TargetPlatform
|
import org.jetbrains.kotlin.resolve.TargetPlatform
|
||||||
import org.jetbrains.kotlin.resolve.checkers.HeaderImplDeclarationChecker
|
import org.jetbrains.kotlin.resolve.checkers.HeaderImplDeclarationChecker
|
||||||
@@ -81,7 +81,7 @@ class PlatformHeaderAnnotator : Annotator {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private fun isHeaderDeclaration(declaration: KtDeclaration): Boolean {
|
private fun isHeaderDeclaration(declaration: KtDeclaration): Boolean {
|
||||||
return declaration.hasHeaderModifier() ||
|
return declaration.hasExpectModifier() ||
|
||||||
declaration is KtClassOrObject && KtPsiUtil.getOutermostClassOrObject(declaration)?.hasHeaderModifier() == true
|
declaration is KtClassOrObject && KtPsiUtil.getOutermostClassOrObject(declaration)?.hasExpectModifier() == true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+2
-2
@@ -35,7 +35,7 @@ import org.jetbrains.kotlin.idea.util.approximateFlexibleTypes
|
|||||||
import org.jetbrains.kotlin.lexer.KtTokens
|
import org.jetbrains.kotlin.lexer.KtTokens
|
||||||
import org.jetbrains.kotlin.psi.*
|
import org.jetbrains.kotlin.psi.*
|
||||||
import org.jetbrains.kotlin.psi.findDocComment.findDocComment
|
import org.jetbrains.kotlin.psi.findDocComment.findDocComment
|
||||||
import org.jetbrains.kotlin.psi.psiUtil.hasHeaderModifier
|
import org.jetbrains.kotlin.psi.psiUtil.hasExpectModifier
|
||||||
import org.jetbrains.kotlin.renderer.*
|
import org.jetbrains.kotlin.renderer.*
|
||||||
import org.jetbrains.kotlin.resolve.descriptorUtil.setSingleOverridden
|
import org.jetbrains.kotlin.resolve.descriptorUtil.setSingleOverridden
|
||||||
|
|
||||||
@@ -100,7 +100,7 @@ interface OverrideMemberChooserObject : ClassMember {
|
|||||||
fun OverrideMemberChooserObject.generateMember(targetClass: KtClassOrObject, copyDoc: Boolean): KtCallableDeclaration {
|
fun OverrideMemberChooserObject.generateMember(targetClass: KtClassOrObject, copyDoc: Boolean): KtCallableDeclaration {
|
||||||
val project = targetClass.project
|
val project = targetClass.project
|
||||||
|
|
||||||
val bodyType = if (targetClass.hasHeaderModifier()) OverrideMemberChooserObject.BodyType.NO_BODY else bodyType
|
val bodyType = if (targetClass.hasExpectModifier()) OverrideMemberChooserObject.BodyType.NO_BODY else bodyType
|
||||||
|
|
||||||
val descriptor = immediateSuper
|
val descriptor = immediateSuper
|
||||||
if (preferConstructorParameter && descriptor is PropertyDescriptor) return generateConstructorParameter(project, descriptor)
|
if (preferConstructorParameter && descriptor is PropertyDescriptor) return generateConstructorParameter(project, descriptor)
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ import org.jetbrains.kotlin.idea.core.toDescriptor
|
|||||||
import org.jetbrains.kotlin.idea.highlighter.sourceKind
|
import org.jetbrains.kotlin.idea.highlighter.sourceKind
|
||||||
import org.jetbrains.kotlin.psi.KtDeclaration
|
import org.jetbrains.kotlin.psi.KtDeclaration
|
||||||
import org.jetbrains.kotlin.psi.psiUtil.containingClassOrObject
|
import org.jetbrains.kotlin.psi.psiUtil.containingClassOrObject
|
||||||
import org.jetbrains.kotlin.psi.psiUtil.hasHeaderModifier
|
import org.jetbrains.kotlin.psi.psiUtil.hasExpectModifier
|
||||||
import org.jetbrains.kotlin.resolve.DescriptorToSourceUtils
|
import org.jetbrains.kotlin.resolve.DescriptorToSourceUtils
|
||||||
import org.jetbrains.kotlin.resolve.MultiTargetPlatform
|
import org.jetbrains.kotlin.resolve.MultiTargetPlatform
|
||||||
import org.jetbrains.kotlin.resolve.checkers.HeaderImplDeclarationChecker
|
import org.jetbrains.kotlin.resolve.checkers.HeaderImplDeclarationChecker
|
||||||
@@ -66,7 +66,7 @@ internal fun KtDeclaration.headerDeclarationIfAny(): KtDeclaration? {
|
|||||||
}
|
}
|
||||||
|
|
||||||
internal fun KtDeclaration.isHeaderOrHeaderClassMember() =
|
internal fun KtDeclaration.isHeaderOrHeaderClassMember() =
|
||||||
hasHeaderModifier() || (containingClassOrObject?.hasHeaderModifier() ?: false)
|
hasExpectModifier() || (containingClassOrObject?.hasExpectModifier() ?: false)
|
||||||
|
|
||||||
internal fun DeclarationDescriptor.liftToHeader(): DeclarationDescriptor? {
|
internal fun DeclarationDescriptor.liftToHeader(): DeclarationDescriptor? {
|
||||||
if (this is MemberDescriptor) {
|
if (this is MemberDescriptor) {
|
||||||
|
|||||||
@@ -48,8 +48,8 @@ import org.jetbrains.kotlin.idea.highlighter.allImplementingCompatibleModules
|
|||||||
import org.jetbrains.kotlin.idea.util.ProjectRootsUtil
|
import org.jetbrains.kotlin.idea.util.ProjectRootsUtil
|
||||||
import org.jetbrains.kotlin.lexer.KtTokens
|
import org.jetbrains.kotlin.lexer.KtTokens
|
||||||
import org.jetbrains.kotlin.psi.*
|
import org.jetbrains.kotlin.psi.*
|
||||||
import org.jetbrains.kotlin.psi.psiUtil.hasHeaderModifier
|
import org.jetbrains.kotlin.psi.psiUtil.hasExpectModifier
|
||||||
import org.jetbrains.kotlin.psi.psiUtil.hasImplModifier
|
import org.jetbrains.kotlin.psi.psiUtil.hasActualModifier
|
||||||
import java.awt.event.MouseEvent
|
import java.awt.event.MouseEvent
|
||||||
import java.util.*
|
import java.util.*
|
||||||
import javax.swing.Icon
|
import javax.swing.Icon
|
||||||
@@ -100,10 +100,10 @@ class KotlinLineMarkerProvider : LineMarkerProvider {
|
|||||||
for (element in elements) {
|
for (element in elements) {
|
||||||
if (element !is KtNamedDeclaration) continue
|
if (element !is KtNamedDeclaration) continue
|
||||||
|
|
||||||
if (element.hasHeaderModifier()) {
|
if (element.hasExpectModifier()) {
|
||||||
collectImplementationMarkers(element, result)
|
collectImplementationMarkers(element, result)
|
||||||
}
|
}
|
||||||
else if (element.hasImplModifier()) {
|
else if (element.hasActualModifier()) {
|
||||||
collectHeaderMarkers(element, result)
|
collectHeaderMarkers(element, result)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -326,10 +326,10 @@ class UnusedSymbolInspection : AbstractKotlinInspection() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private fun isPlatformImplementation(declaration: KtNamedDeclaration) =
|
private fun isPlatformImplementation(declaration: KtNamedDeclaration) =
|
||||||
declaration.hasImplModifier()
|
declaration.hasActualModifier()
|
||||||
|
|
||||||
private fun hasPlatformImplementations(declaration: KtNamedDeclaration, descriptor: DeclarationDescriptor?): Boolean {
|
private fun hasPlatformImplementations(declaration: KtNamedDeclaration, descriptor: DeclarationDescriptor?): Boolean {
|
||||||
if (!declaration.hasHeaderModifier()) return false
|
if (!declaration.hasExpectModifier()) return false
|
||||||
|
|
||||||
descriptor as? MemberDescriptor ?: return false
|
descriptor as? MemberDescriptor ?: return false
|
||||||
val commonModuleDescriptor = declaration.containingKtFile.findModuleDescriptor()
|
val commonModuleDescriptor = declaration.containingKtFile.findModuleDescriptor()
|
||||||
|
|||||||
Reference in New Issue
Block a user