From 1a5a077bd6cf0fcfc1a4274ac2925f75b6bfc948 Mon Sep 17 00:00:00 2001 From: Alexander Udalov Date: Sat, 20 Feb 2016 17:33:39 +0300 Subject: [PATCH] Replace map + filterNotNull -> mapNotNull in project --- .../Conditional.kt | 8 ++++--- .../kotlin/resolve/jvm/JvmAnalyzerFacade.kt | 5 ++-- .../kotlin/cfg/ControlFlowProcessor.kt | 23 ++++++++++--------- .../inference/ConstraintSystemBuilderImpl.kt | 2 +- .../calls/inference/constraintSystemUtils.kt | 4 ++-- .../diagnostics/KotlinSuppressCache.kt | 4 ++-- .../descriptors/LazyJavaClassMemberScope.kt | 4 ++-- .../descriptors/LazyJavaPackageFragment.kt | 5 ++-- .../java/typeEnhancement/typeQualifiers.kt | 6 ++--- .../descriptors/annotations/Annotations.kt | 6 ++--- .../kotlin/resolve/scopes/MemberScope.kt | 9 +++----- .../deserialization/AnnotationDeserializer.kt | 2 +- .../kotlin/reflect/jvm/internal/KClassImpl.kt | 4 ++-- .../jvm/internal/KDeclarationContainerImpl.kt | 3 +-- .../caches/resolve/KotlinCacheServiceImpl.kt | 2 +- .../KotlinIntroduceVariableHandler.kt | 3 +-- .../kotlin/j2k/ExpressionConverter.kt | 4 ++-- .../synthetic/AndroidComponentRegistrar.kt | 7 ++++-- .../idea/AndroidGotoDeclarationHandler.kt | 5 ++-- 19 files changed, 52 insertions(+), 54 deletions(-) diff --git a/compiler/conditional-preprocessor/src/org.jetbrains.kotlin.preprocessor/Conditional.kt b/compiler/conditional-preprocessor/src/org.jetbrains.kotlin.preprocessor/Conditional.kt index 2969d9300e1..6a3f41facc9 100644 --- a/compiler/conditional-preprocessor/src/org.jetbrains.kotlin.preprocessor/Conditional.kt +++ b/compiler/conditional-preprocessor/src/org.jetbrains.kotlin.preprocessor/Conditional.kt @@ -16,7 +16,9 @@ package org.jetbrains.kotlin.preprocessor -import org.jetbrains.kotlin.psi.* +import org.jetbrains.kotlin.psi.KtAnnotated +import org.jetbrains.kotlin.psi.KtAnnotationEntry +import org.jetbrains.kotlin.psi.KtUserType interface Conditional { @@ -52,10 +54,10 @@ interface Conditional { } fun KtAnnotated.parseConditionalAnnotations(): List = - annotationEntries.map { + annotationEntries.mapNotNull { val parser = Conditional.ANNOTATIONS.get(it.typeReferenceName) parser?.parse?.invoke(it.valueArguments.splitToPositionalAndNamed()) - }.filterNotNull() + } val KtAnnotationEntry.typeReferenceName: String? get() = diff --git a/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/JvmAnalyzerFacade.kt b/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/JvmAnalyzerFacade.kt index 894e6eb1a65..a89bf476383 100644 --- a/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/JvmAnalyzerFacade.kt +++ b/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/JvmAnalyzerFacade.kt @@ -31,9 +31,9 @@ import org.jetbrains.kotlin.load.java.lazy.ModuleClassResolverImpl import org.jetbrains.kotlin.load.java.structure.JavaClass import org.jetbrains.kotlin.psi.KtFile import org.jetbrains.kotlin.resolve.CodeAnalyzerInitializer -import org.jetbrains.kotlin.resolve.jvm.extensions.PackageFragmentProviderExtension import org.jetbrains.kotlin.resolve.TargetEnvironment import org.jetbrains.kotlin.resolve.TargetPlatform +import org.jetbrains.kotlin.resolve.jvm.extensions.PackageFragmentProviderExtension import org.jetbrains.kotlin.resolve.jvm.platform.JvmPlatform import org.jetbrains.kotlin.resolve.lazy.ResolveSession import org.jetbrains.kotlin.resolve.lazy.declarations.DeclarationProviderFactoryService @@ -99,8 +99,7 @@ object JvmAnalyzerFacade : AnalyzerFacade() { javaDescriptorResolver.packageFragmentProvider) providersForModule += PackageFragmentProviderExtension.getInstances(project) - .map { it.getPackageFragmentProvider(project, moduleDescriptor, moduleContext.storageManager, trace, moduleInfo) } - .filterNotNull() + .mapNotNull { it.getPackageFragmentProvider(project, moduleDescriptor, moduleContext.storageManager, trace, moduleInfo) } return ResolverForModule(CompositePackageFragmentProvider(providersForModule), container) } diff --git a/compiler/frontend/src/org/jetbrains/kotlin/cfg/ControlFlowProcessor.kt b/compiler/frontend/src/org/jetbrains/kotlin/cfg/ControlFlowProcessor.kt index fef0b43d94e..c5d385a7dd3 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/cfg/ControlFlowProcessor.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/cfg/ControlFlowProcessor.kt @@ -22,6 +22,7 @@ import com.intellij.psi.util.PsiTreeUtil import com.intellij.util.SmartFMap import com.intellij.util.containers.ContainerUtil import org.jetbrains.kotlin.builtins.KotlinBuiltIns +import org.jetbrains.kotlin.cfg.ControlFlowBuilder.PredefinedOperation.* import org.jetbrains.kotlin.cfg.pseudocode.ControlFlowInstructionsGenerator import org.jetbrains.kotlin.cfg.pseudocode.PseudoValue import org.jetbrains.kotlin.cfg.pseudocode.Pseudocode @@ -31,30 +32,30 @@ import org.jetbrains.kotlin.cfg.pseudocode.instructions.eval.InstructionWithValu import org.jetbrains.kotlin.cfg.pseudocode.instructions.eval.MagicKind import org.jetbrains.kotlin.descriptors.* import org.jetbrains.kotlin.descriptors.impl.AnonymousFunctionDescriptor +import org.jetbrains.kotlin.diagnostics.Errors.* import org.jetbrains.kotlin.lexer.KtToken import org.jetbrains.kotlin.lexer.KtTokens +import org.jetbrains.kotlin.lexer.KtTokens.* import org.jetbrains.kotlin.psi.* -import org.jetbrains.kotlin.psi.psiUtil.* +import org.jetbrains.kotlin.psi.psiUtil.getQualifiedElementSelector +import org.jetbrains.kotlin.psi.psiUtil.getStrictParentOfType import org.jetbrains.kotlin.resolve.BindingContext import org.jetbrains.kotlin.resolve.BindingContextUtils import org.jetbrains.kotlin.resolve.BindingTrace import org.jetbrains.kotlin.resolve.CompileTimeConstantUtils -import org.jetbrains.kotlin.resolve.calls.callUtil.* -import org.jetbrains.kotlin.resolve.calls.model.* +import org.jetbrains.kotlin.resolve.calls.callUtil.getResolvedCall +import org.jetbrains.kotlin.resolve.calls.model.ArgumentMatch +import org.jetbrains.kotlin.resolve.calls.model.ResolvedCall +import org.jetbrains.kotlin.resolve.calls.model.VariableAsFunctionResolvedCall import org.jetbrains.kotlin.resolve.calls.tasks.ExplicitReceiverKind import org.jetbrains.kotlin.resolve.constants.evaluate.ConstantExpressionEvaluator import org.jetbrains.kotlin.resolve.scopes.receivers.ExpressionReceiver -import org.jetbrains.kotlin.resolve.scopes.receivers.ReceiverValue import org.jetbrains.kotlin.resolve.scopes.receivers.ImplicitReceiver +import org.jetbrains.kotlin.resolve.scopes.receivers.ReceiverValue import org.jetbrains.kotlin.resolve.scopes.receivers.TransientReceiver import org.jetbrains.kotlin.types.expressions.OperatorConventions - import java.util.* -import org.jetbrains.kotlin.cfg.ControlFlowBuilder.PredefinedOperation.* -import org.jetbrains.kotlin.diagnostics.Errors.* -import org.jetbrains.kotlin.lexer.KtTokens.* - class ControlFlowProcessor(private val trace: BindingTrace) { private val builder: ControlFlowBuilder = ControlFlowInstructionsGenerator() @@ -202,7 +203,7 @@ class ControlFlowProcessor(private val trace: BindingTrace) { } private fun elementsToValues(from: List): List { - return from.map { element -> getBoundOrUnreachableValue(element) }.filterNotNull() + return from.mapNotNull { element -> getBoundOrUnreachableValue(element) } } private fun generateInitializer(declaration: KtDeclaration, initValue: PseudoValue) { @@ -1268,7 +1269,7 @@ class ControlFlowProcessor(private val trace: BindingTrace) { private fun generateCallOrMarkUnresolved(call: KtCallElement) { if (!generateCall(call)) { - val arguments = call.valueArguments.map { valueArgument -> valueArgument.getArgumentExpression() }.filterNotNull() + val arguments = call.valueArguments.mapNotNull { valueArgument -> valueArgument.getArgumentExpression() } for (argument in arguments) { generateInstructions(argument) diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/inference/ConstraintSystemBuilderImpl.kt b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/inference/ConstraintSystemBuilderImpl.kt index 1cd2c69199d..8a4191125b8 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/inference/ConstraintSystemBuilderImpl.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/inference/ConstraintSystemBuilderImpl.kt @@ -105,7 +105,7 @@ class ConstraintSystemBuilderImpl : ConstraintSystem.Builder { } internal fun getNestedTypeVariables(type: KotlinType): List = - type.getNestedTypeParameters().map { getMyTypeVariable(it) }.filterNotNull() + type.getNestedTypeParameters().mapNotNull { getMyTypeVariable(it) } override fun addSubtypeConstraint(constrainingType: KotlinType?, subjectType: KotlinType?, constraintPosition: ConstraintPosition) { addConstraint(SUB_TYPE, constrainingType, subjectType, ConstraintContext(constraintPosition, initial = true)) diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/inference/constraintSystemUtils.kt b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/inference/constraintSystemUtils.kt index e969f10de3f..b3770177f2a 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/inference/constraintSystemUtils.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/inference/constraintSystemUtils.kt @@ -57,7 +57,7 @@ internal fun KotlinType.getNestedArguments(): List { } internal fun KotlinType.getNestedTypeParameters(): List { - return getNestedArguments().map { typeProjection -> + return getNestedArguments().mapNotNull { typeProjection -> typeProjection.type.constructor.declarationDescriptor as? TypeParameterDescriptor - }.filterNotNull() + } } diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/diagnostics/KotlinSuppressCache.kt b/compiler/frontend/src/org/jetbrains/kotlin/resolve/diagnostics/KotlinSuppressCache.kt index 6051827d1d7..7824c137989 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/diagnostics/KotlinSuppressCache.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/diagnostics/KotlinSuppressCache.kt @@ -268,7 +268,7 @@ class BindingContextSuppressCache(val context: BindingContext) : KotlinSuppressC return descriptor.annotations.toList() } else { - return annotated.annotationEntries.map { context.get(BindingContext.ANNOTATION, it) }.filterNotNull() + return annotated.annotationEntries.mapNotNull { context.get(BindingContext.ANNOTATION, it) } } } -} \ No newline at end of file +} diff --git a/core/descriptor.loader.java/src/org/jetbrains/kotlin/load/java/lazy/descriptors/LazyJavaClassMemberScope.kt b/core/descriptor.loader.java/src/org/jetbrains/kotlin/load/java/lazy/descriptors/LazyJavaClassMemberScope.kt index 1a966aa01c5..afc7d048a47 100644 --- a/core/descriptor.loader.java/src/org/jetbrains/kotlin/load/java/lazy/descriptors/LazyJavaClassMemberScope.kt +++ b/core/descriptor.loader.java/src/org/jetbrains/kotlin/load/java/lazy/descriptors/LazyJavaClassMemberScope.kt @@ -470,9 +470,9 @@ class LazyJavaClassMemberScope( simpleFunctionDescriptor: SimpleFunctionDescriptor ): Boolean { val candidatesToOverride = - getFunctionsFromSupertypes(simpleFunctionDescriptor.name).map { + getFunctionsFromSupertypes(simpleFunctionDescriptor.name).mapNotNull { BuiltinMethodsWithSpecialGenericSignature.getOverriddenBuiltinFunctionWithErasedValueParametersInJava(it) - }.filterNotNull() + } return candidatesToOverride.any { candidate -> diff --git a/core/descriptor.loader.java/src/org/jetbrains/kotlin/load/java/lazy/descriptors/LazyJavaPackageFragment.kt b/core/descriptor.loader.java/src/org/jetbrains/kotlin/load/java/lazy/descriptors/LazyJavaPackageFragment.kt index e56edac8c59..070d6bcd3ce 100644 --- a/core/descriptor.loader.java/src/org/jetbrains/kotlin/load/java/lazy/descriptors/LazyJavaPackageFragment.kt +++ b/core/descriptor.loader.java/src/org/jetbrains/kotlin/load/java/lazy/descriptors/LazyJavaPackageFragment.kt @@ -40,11 +40,10 @@ class LazyJavaPackageFragment( } internal val kotlinBinaryClasses by c.storageManager.createLazyValue { - val simpleNames = c.components.packageMapper.findPackageParts(fqName.asString()) - simpleNames.map { + c.components.packageMapper.findPackageParts(fqName.asString()).mapNotNull { val classId = ClassId(fqName, Name.identifier(it)) c.components.kotlinClassFinder.findKotlinClass(classId) - }.filterNotNull() + } } internal fun resolveTopLevelClass(javaClass: JavaClass) = topLevelClasses(javaClass) diff --git a/core/descriptor.loader.java/src/org/jetbrains/kotlin/load/java/typeEnhancement/typeQualifiers.kt b/core/descriptor.loader.java/src/org/jetbrains/kotlin/load/java/typeEnhancement/typeQualifiers.kt index d688f4c0b6c..ce3eb6da1e2 100644 --- a/core/descriptor.loader.java/src/org/jetbrains/kotlin/load/java/typeEnhancement/typeQualifiers.kt +++ b/core/descriptor.loader.java/src/org/jetbrains/kotlin/load/java/typeEnhancement/typeQualifiers.kt @@ -132,7 +132,7 @@ fun KotlinType.computeIndexedQualifiersForOverride(fromSupertypes: Collection, isCovariant: Boolean): JavaTypeQualifiers { - val nullabilityFromSupertypes = fromSupertypes.map { it.extractQualifiers().nullability }.filterNotNull().toSet() - val mutabilityFromSupertypes = fromSupertypes.map { it.extractQualifiers().mutability }.filterNotNull().toSet() + val nullabilityFromSupertypes = fromSupertypes.mapNotNull { it.extractQualifiers().nullability }.toSet() + val mutabilityFromSupertypes = fromSupertypes.mapNotNull { it.extractQualifiers().mutability }.toSet() val own = extractQualifiersFromAnnotations() diff --git a/core/descriptors/src/org/jetbrains/kotlin/descriptors/annotations/Annotations.kt b/core/descriptors/src/org/jetbrains/kotlin/descriptors/annotations/Annotations.kt index 5760115fd33..1d162b78882 100644 --- a/core/descriptors/src/org/jetbrains/kotlin/descriptors/annotations/Annotations.kt +++ b/core/descriptors/src/org/jetbrains/kotlin/descriptors/annotations/Annotations.kt @@ -122,13 +122,13 @@ class CompositeAnnotations( override fun hasAnnotation(fqName: FqName) = delegates.asSequence().any { it.hasAnnotation(fqName) } - override fun findAnnotation(fqName: FqName) = delegates.asSequence().map { it.findAnnotation(fqName) }.filterNotNull().firstOrNull() + override fun findAnnotation(fqName: FqName) = delegates.asSequence().mapNotNull { it.findAnnotation(fqName) }.firstOrNull() - override fun findExternalAnnotation(fqName: FqName) = delegates.asSequence().map { it.findExternalAnnotation(fqName) }.filterNotNull().firstOrNull() + override fun findExternalAnnotation(fqName: FqName) = delegates.asSequence().mapNotNull { it.findExternalAnnotation(fqName) }.firstOrNull() override fun getUseSiteTargetedAnnotations() = delegates.flatMap { it.getUseSiteTargetedAnnotations() } override fun getAllAnnotations() = delegates.flatMap { it.getAllAnnotations() } override fun iterator() = delegates.asSequence().flatMap { it.asSequence() }.iterator() -} \ No newline at end of file +} diff --git a/core/descriptors/src/org/jetbrains/kotlin/resolve/scopes/MemberScope.kt b/core/descriptors/src/org/jetbrains/kotlin/resolve/scopes/MemberScope.kt index 1a98245e2b5..63afbe5c5fe 100644 --- a/core/descriptors/src/org/jetbrains/kotlin/resolve/scopes/MemberScope.kt +++ b/core/descriptors/src/org/jetbrains/kotlin/resolve/scopes/MemberScope.kt @@ -95,8 +95,7 @@ class DescriptorKindFilter( override fun toString(): String { val predefinedFilterName = DEBUG_PREDEFINED_FILTERS_MASK_NAMES.firstOrNull { it.mask == kindMask } ?.name val kindString = predefinedFilterName ?: DEBUG_MASK_BIT_NAMES - .map { if (acceptsKinds(it.mask)) it.name else null } - .filterNotNull() + .mapNotNull { if (acceptsKinds(it.mask)) it.name else null } .joinToString(separator = " | ") return "DescriptorKindFilter($kindString, $excludes)" @@ -138,21 +137,19 @@ class DescriptorKindFilter( private class MaskToName(val mask: Int, val name: String) private val DEBUG_PREDEFINED_FILTERS_MASK_NAMES = staticFields() - .map { field -> + .mapNotNull { field -> val filter = field.get(null) as? DescriptorKindFilter if (filter != null) MaskToName(filter.kindMask, field.name) else null } - .filterNotNull() .toReadOnlyList() private val DEBUG_MASK_BIT_NAMES = staticFields() .filter { it.type == Integer.TYPE } - .map { field -> + .mapNotNull { field -> val mask = field.get(null) as Int val isOneBitMask = mask == (mask and (-mask)) if (isOneBitMask) MaskToName(mask, field.name) else null } - .filterNotNull() .toReadOnlyList() private inline fun staticFields() = T::class.java.fields.filter { Modifier.isStatic(it.modifiers) } diff --git a/core/deserialization/src/org/jetbrains/kotlin/serialization/deserialization/AnnotationDeserializer.kt b/core/deserialization/src/org/jetbrains/kotlin/serialization/deserialization/AnnotationDeserializer.kt index 3c31ee89ac7..3c1f6b50bfc 100644 --- a/core/deserialization/src/org/jetbrains/kotlin/serialization/deserialization/AnnotationDeserializer.kt +++ b/core/deserialization/src/org/jetbrains/kotlin/serialization/deserialization/AnnotationDeserializer.kt @@ -50,7 +50,7 @@ class AnnotationDeserializer(private val module: ModuleDescriptor) { val constructor = annotationClass.constructors.singleOrNull() if (constructor != null) { val parameterByName = constructor.valueParameters.associateBy { it.name } - arguments = proto.argumentList.map { resolveArgument(it, parameterByName, nameResolver) }.filterNotNull().toMap() + arguments = proto.argumentList.mapNotNull { resolveArgument(it, parameterByName, nameResolver) }.toMap() } } diff --git a/core/reflection.jvm/src/kotlin/reflect/jvm/internal/KClassImpl.kt b/core/reflection.jvm/src/kotlin/reflect/jvm/internal/KClassImpl.kt index e8bd4169cf7..9882aeb758b 100644 --- a/core/reflection.jvm/src/kotlin/reflect/jvm/internal/KClassImpl.kt +++ b/core/reflection.jvm/src/kotlin/reflect/jvm/internal/KClassImpl.kt @@ -120,7 +120,7 @@ internal class KClassImpl(override val jClass: Class) : KDeclaration } override val nestedClasses: Collection> - get() = descriptor.unsubstitutedInnerClassesScope.getContributedDescriptors().filterNot(DescriptorUtils::isEnumEntry).map { + get() = descriptor.unsubstitutedInnerClassesScope.getContributedDescriptors().filterNot(DescriptorUtils::isEnumEntry).mapNotNull { nestedClass -> val source = (nestedClass as DeclarationDescriptorWithSource).source when (source) { @@ -139,7 +139,7 @@ internal class KClassImpl(override val jClass: Class) : KDeclaration } else -> throw KotlinReflectionInternalError("Unsupported class: $nestedClass (source = $source)") } - }.filterNotNull().map { KClassImpl(it) } + }.map { KClassImpl(it) } @Suppress("UNCHECKED_CAST") private val objectInstance_ = ReflectProperties.lazy { diff --git a/core/reflection.jvm/src/kotlin/reflect/jvm/internal/KDeclarationContainerImpl.kt b/core/reflection.jvm/src/kotlin/reflect/jvm/internal/KDeclarationContainerImpl.kt index 2870e75d4ae..abf5e33d0a3 100644 --- a/core/reflection.jvm/src/kotlin/reflect/jvm/internal/KDeclarationContainerImpl.kt +++ b/core/reflection.jvm/src/kotlin/reflect/jvm/internal/KDeclarationContainerImpl.kt @@ -75,10 +75,9 @@ internal abstract class KDeclarationContainerImpl : ClassBasedDeclarationContain .filter { descriptor -> descriptor !is MemberDescriptor || descriptor.visibility != Visibilities.INVISIBLE_FAKE } - .map { descriptor -> + .mapNotNull { descriptor -> descriptor.accept(visitor, Unit) } - .filterNotNull() } private fun createProperty(descriptor: PropertyDescriptor): KPropertyImpl<*> { diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/resolve/KotlinCacheServiceImpl.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/resolve/KotlinCacheServiceImpl.kt index 39a9348e75f..921fe815a72 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/resolve/KotlinCacheServiceImpl.kt +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/resolve/KotlinCacheServiceImpl.kt @@ -171,7 +171,7 @@ class KotlinCacheServiceImpl(val project: Project) : KotlinCacheService { return annotatedDescriptor.annotations.toList() } else { - return annotated.annotationEntries.map { context.get(BindingContext.ANNOTATION, it) }.filterNotNull() + return annotated.annotationEntries.mapNotNull { context.get(BindingContext.ANNOTATION, it) } } } }, LibraryModificationTracker.getInstance(project), PsiModificationTracker.MODIFICATION_COUNT) diff --git a/idea/src/org/jetbrains/kotlin/idea/refactoring/introduce/introduceVariable/KotlinIntroduceVariableHandler.kt b/idea/src/org/jetbrains/kotlin/idea/refactoring/introduce/introduceVariable/KotlinIntroduceVariableHandler.kt index 68279aa14b2..30587b3dce2 100644 --- a/idea/src/org/jetbrains/kotlin/idea/refactoring/introduce/introduceVariable/KotlinIntroduceVariableHandler.kt +++ b/idea/src/org/jetbrains/kotlin/idea/refactoring/introduce/introduceVariable/KotlinIntroduceVariableHandler.kt @@ -319,7 +319,7 @@ object KotlinIntroduceVariableHandler : RefactoringActionHandler { private fun KtExpression.findOccurrences(occurrenceContainer: PsiElement): List { return toRange() .match(occurrenceContainer, KotlinPsiUnifier.DEFAULT) - .map { + .mapNotNull { val candidate = it.range.elements.first() when (candidate) { is KtExpression -> candidate @@ -327,7 +327,6 @@ object KotlinIntroduceVariableHandler : RefactoringActionHandler { else -> throw AssertionError("Unexpected candidate element: " + candidate.text) } as? KtExpression } - .filterNotNull() } private fun KtExpression.shouldReplaceOccurrence(bindingContext: BindingContext, container: PsiElement?): Boolean { diff --git a/j2k/src/org/jetbrains/kotlin/j2k/ExpressionConverter.kt b/j2k/src/org/jetbrains/kotlin/j2k/ExpressionConverter.kt index 065fc8ecc57..ec8a0f11c7f 100644 --- a/j2k/src/org/jetbrains/kotlin/j2k/ExpressionConverter.kt +++ b/j2k/src/org/jetbrains/kotlin/j2k/ExpressionConverter.kt @@ -611,11 +611,11 @@ class DefaultExpressionConverter : JavaElementVisitor(), ExpressionConverter { val args = expression.operands.map { codeConverter.convertExpression(it, expression.type).assignPrototype(it, commentsAndSpacesInheritance) } - val operators = expression.operands.map { + val operators = expression.operands.mapNotNull { expression.getTokenBeforeOperand(it)?.let { Operator(it.tokenType).assignPrototype(it, commentsAndSpacesInheritance) } - }.filterNotNull() + } result = PolyadicExpression(args, operators).assignPrototype(expression) } diff --git a/plugins/android-compiler-plugin/src/org/jetbrains/kotlin/android/synthetic/AndroidComponentRegistrar.kt b/plugins/android-compiler-plugin/src/org/jetbrains/kotlin/android/synthetic/AndroidComponentRegistrar.kt index e0142d20cc0..7cd66796c4c 100644 --- a/plugins/android-compiler-plugin/src/org/jetbrains/kotlin/android/synthetic/AndroidComponentRegistrar.kt +++ b/plugins/android-compiler-plugin/src/org/jetbrains/kotlin/android/synthetic/AndroidComponentRegistrar.kt @@ -22,7 +22,10 @@ import org.jetbrains.kotlin.android.synthetic.codegen.AndroidExpressionCodegenEx import org.jetbrains.kotlin.android.synthetic.codegen.AndroidOnDestroyClassBuilderInterceptorExtension import org.jetbrains.kotlin.android.synthetic.diagnostic.AndroidExtensionPropertiesCallChecker import org.jetbrains.kotlin.android.synthetic.diagnostic.DefaultErrorMessagesAndroid -import org.jetbrains.kotlin.android.synthetic.res.* +import org.jetbrains.kotlin.android.synthetic.res.AndroidLayoutXmlFileManager +import org.jetbrains.kotlin.android.synthetic.res.AndroidVariant +import org.jetbrains.kotlin.android.synthetic.res.CliAndroidLayoutXmlFileManager +import org.jetbrains.kotlin.android.synthetic.res.CliAndroidPackageFragmentProviderExtension import org.jetbrains.kotlin.codegen.extensions.ClassBuilderInterceptorExtension import org.jetbrains.kotlin.codegen.extensions.ExpressionCodegenExtension import org.jetbrains.kotlin.compiler.plugin.CliOption @@ -73,7 +76,7 @@ class AndroidComponentRegistrar : ComponentRegistrar { override fun registerProjectComponents(project: MockProject, configuration: CompilerConfiguration) { val applicationPackage = configuration.get(AndroidConfigurationKeys.PACKAGE) - val variants = configuration.get(AndroidConfigurationKeys.VARIANT)?.map { parseVariant(it) }?.filterNotNull() ?: emptyList() + val variants = configuration.get(AndroidConfigurationKeys.VARIANT)?.mapNotNull { parseVariant(it) } ?: emptyList() if (variants.isNotEmpty() && !applicationPackage.isNullOrBlank()) { val layoutXmlFileManager = CliAndroidLayoutXmlFileManager(project, applicationPackage!!, variants) diff --git a/plugins/android-idea-plugin/src/org/jetbrains/kotlin/android/synthetic/idea/AndroidGotoDeclarationHandler.kt b/plugins/android-idea-plugin/src/org/jetbrains/kotlin/android/synthetic/idea/AndroidGotoDeclarationHandler.kt index 08e007c2347..4e578c5ef61 100644 --- a/plugins/android-idea-plugin/src/org/jetbrains/kotlin/android/synthetic/idea/AndroidGotoDeclarationHandler.kt +++ b/plugins/android-idea-plugin/src/org/jetbrains/kotlin/android/synthetic/idea/AndroidGotoDeclarationHandler.kt @@ -41,7 +41,7 @@ class AndroidGotoDeclarationHandler : GotoDeclarationHandler { val propertyDescriptor = resolvePropertyDescriptor(simpleNameExpression) ?: return null val psiElements = layoutManager.propertyToXmlAttributes(propertyDescriptor) - val valueElements = psiElements.map { (it as? XmlAttribute)?.valueElement as? PsiElement }.filterNotNull() + val valueElements = psiElements.mapNotNull { (it as? XmlAttribute)?.valueElement as? PsiElement } if (valueElements.isNotEmpty()) return valueElements.toTypedArray() } @@ -64,5 +64,4 @@ class AndroidGotoDeclarationHandler : GotoDeclarationHandler { override fun getActionText(context: DataContext?): String? { return null } - -} \ No newline at end of file +}