This commit is contained in:
Valentin Kipyatkov
2016-08-10 18:10:43 +03:00
parent 77064c7937
commit acdf9e82b4
@@ -330,7 +330,10 @@ object FindTransformationMatcher : TransformationMatcher {
filter: KtExpression?, filter: KtExpression?,
negated: Boolean negated: Boolean
): FindOperationGenerator { ): FindOperationGenerator {
if (filter != null) { if (filter == null) {
return SimpleGenerator(if (negated) "none" else "any", inputVariable, filter)
}
val containsArgument = filter.isFilterForContainsOperation(inputVariable, loop) val containsArgument = filter.isFilterForContainsOperation(inputVariable, loop)
if (containsArgument != null) { if (containsArgument != null) {
val generator = SimpleGenerator("contains", inputVariable, null, containsArgument) val generator = SimpleGenerator("contains", inputVariable, null, containsArgument)
@@ -345,14 +348,8 @@ object FindTransformationMatcher : TransformationMatcher {
return generator return generator
} }
} }
}
if (negated) { return SimpleGenerator(if (negated) "none" else "any", inputVariable, filter)
return SimpleGenerator("none", inputVariable, filter)
}
else {
return SimpleGenerator("any", inputVariable, filter)
}
} }
private fun KtExpression.isFilterForContainsOperation(inputVariable: KtCallableDeclaration, loop: KtForExpression): KtExpression? { private fun KtExpression.isFilterForContainsOperation(inputVariable: KtCallableDeclaration, loop: KtForExpression): KtExpression? {