Minor: reformat & optimize imports

This commit is contained in:
Dmitry Petrov
2018-12-25 15:17:39 +03:00
parent e640f01b4e
commit 6414abb277
7 changed files with 21 additions and 34 deletions
@@ -16,12 +16,7 @@
package org.jetbrains.kotlin.codegen.range package org.jetbrains.kotlin.codegen.range
import org.jetbrains.kotlin.codegen.ExpressionCodegen
import org.jetbrains.kotlin.codegen.StackValue
import org.jetbrains.kotlin.descriptors.CallableDescriptor
import org.jetbrains.kotlin.resolve.calls.model.ResolvedCall
import org.jetbrains.org.objectweb.asm.Type import org.jetbrains.org.objectweb.asm.Type
import org.jetbrains.org.objectweb.asm.commons.InstructionAdapter
abstract class AbstractBoundedValue( abstract class AbstractBoundedValue(
override val instanceType: Type, override val instanceType: Type,
@@ -39,14 +39,14 @@ class DownToProgressionRangeValue(rangeCall: ResolvedCall<out CallableDescriptor
override fun createForLoopGenerator(codegen: ExpressionCodegen, forExpression: KtForExpression) = override fun createForLoopGenerator(codegen: ExpressionCodegen, forExpression: KtForExpression) =
createConstBoundedForInDownToGenerator(codegen, forExpression) createConstBoundedForInDownToGenerator(codegen, forExpression)
?: ForInSimpleProgressionLoopGenerator.fromBoundedValueWithStepMinus1(codegen, forExpression, getBoundedValue(codegen)) ?: ForInSimpleProgressionLoopGenerator.fromBoundedValueWithStepMinus1(codegen, forExpression, getBoundedValue(codegen))
override fun createForInReversedLoopGenerator(codegen: ExpressionCodegen, forExpression: KtForExpression) = override fun createForInReversedLoopGenerator(codegen: ExpressionCodegen, forExpression: KtForExpression) =
createConstBoundedForInReversedDownToGenerator(codegen, forExpression) createConstBoundedForInReversedDownToGenerator(codegen, forExpression)
?: ForInSimpleProgressionLoopGenerator.fromBoundedValueWithStep1( ?: ForInSimpleProgressionLoopGenerator.fromBoundedValueWithStep1(
codegen, forExpression, getBoundedValue(codegen), codegen, forExpression, getBoundedValue(codegen),
inverseBoundsEvaluationOrder = true inverseBoundsEvaluationOrder = true
) )
private fun createConstBoundedForInDownToGenerator( private fun createConstBoundedForInDownToGenerator(
codegen: ExpressionCodegen, codegen: ExpressionCodegen,
@@ -58,7 +58,7 @@ abstract class PrimitiveNumberRangeIntrinsicRangeValue(
comparedType == Type.DOUBLE_TYPE || comparedType == Type.FLOAT_TYPE -> { comparedType == Type.DOUBLE_TYPE || comparedType == Type.FLOAT_TYPE -> {
val rangeLiteral = getBoundedValue(codegen) as? SimpleBoundedValue val rangeLiteral = getBoundedValue(codegen) as? SimpleBoundedValue
?: throw AssertionError("Floating point intrinsic range value should be a range literal") ?: throw AssertionError("Floating point intrinsic range value should be a range literal")
InFloatingPointRangeLiteralExpressionGenerator(operatorReference, rangeLiteral, comparisonGenerator, codegen.frameMap) InFloatingPointRangeLiteralExpressionGenerator(operatorReference, rangeLiteral, comparisonGenerator, codegen.frameMap)
} }
@@ -51,14 +51,14 @@ class PrimitiveNumberRangeLiteralRangeValue(
override fun createForLoopGenerator(codegen: ExpressionCodegen, forExpression: KtForExpression): ForLoopGenerator = override fun createForLoopGenerator(codegen: ExpressionCodegen, forExpression: KtForExpression): ForLoopGenerator =
createConstBoundedForInRangeLiteralGenerator(codegen, forExpression) createConstBoundedForInRangeLiteralGenerator(codegen, forExpression)
?: ForInSimpleProgressionLoopGenerator.fromBoundedValueWithStep1(codegen, forExpression, getBoundedValue(codegen)) ?: ForInSimpleProgressionLoopGenerator.fromBoundedValueWithStep1(codegen, forExpression, getBoundedValue(codegen))
override fun createForInReversedLoopGenerator(codegen: ExpressionCodegen, forExpression: KtForExpression): ForLoopGenerator = override fun createForInReversedLoopGenerator(codegen: ExpressionCodegen, forExpression: KtForExpression): ForLoopGenerator =
createConstBoundedRangeForInReversedRangeLiteralGenerator(codegen, forExpression) createConstBoundedRangeForInReversedRangeLiteralGenerator(codegen, forExpression)
?: ForInSimpleProgressionLoopGenerator.fromBoundedValueWithStepMinus1( ?: ForInSimpleProgressionLoopGenerator.fromBoundedValueWithStepMinus1(
codegen, forExpression, getBoundedValue(codegen), codegen, forExpression, getBoundedValue(codegen),
inverseBoundsEvaluationOrder = true inverseBoundsEvaluationOrder = true
) )
private fun createConstBoundedForInRangeLiteralGenerator( private fun createConstBoundedForInRangeLiteralGenerator(
codegen: ExpressionCodegen, codegen: ExpressionCodegen,
@@ -92,16 +92,11 @@ private fun ExpressionCodegen.canBeSpecializedByExcludingHighBound(rangeCall: Re
return isArraySizeMinusOne(rangeCall.getFirstArgumentExpression()!!) return isArraySizeMinusOne(rangeCall.getFirstArgumentExpression()!!)
} }
private fun ExpressionCodegen.isArraySizeMinusOne(expression: KtExpression): Boolean { private fun ExpressionCodegen.isArraySizeMinusOne(expression: KtExpression): Boolean =
return when { expression is KtBinaryExpression &&
expression is KtBinaryExpression -> {
isArraySizeAccess(expression.left!!) && isArraySizeAccess(expression.left!!) &&
expression.getOperationToken() === org.jetbrains.kotlin.lexer.KtTokens.MINUS && expression.operationToken === org.jetbrains.kotlin.lexer.KtTokens.MINUS &&
isConstantOne(expression.right!!) isConstantOne(expression.right!!)
}
else -> false
}
}
private fun ExpressionCodegen.isConstantOne(expression: KtExpression): Boolean { private fun ExpressionCodegen.isConstantOne(expression: KtExpression): Boolean {
val constantValue = getCompileTimeConstant(expression).safeAs<IntegerValueConstant<*>>() ?: return false val constantValue = getCompileTimeConstant(expression).safeAs<IntegerValueConstant<*>>() ?: return false
@@ -43,10 +43,10 @@ class PrimitiveNumberUntilRangeValue(rangeCall: ResolvedCall<out CallableDescrip
override fun createForInReversedLoopGenerator(codegen: ExpressionCodegen, forExpression: KtForExpression) = override fun createForInReversedLoopGenerator(codegen: ExpressionCodegen, forExpression: KtForExpression) =
createConstBoundedForInReversedUntilGenerator(codegen, forExpression) createConstBoundedForInReversedUntilGenerator(codegen, forExpression)
?: ForInSimpleProgressionLoopGenerator.fromBoundedValueWithStepMinus1( ?: ForInSimpleProgressionLoopGenerator.fromBoundedValueWithStepMinus1(
codegen, forExpression, getBoundedValue(codegen), codegen, forExpression, getBoundedValue(codegen),
inverseBoundsEvaluationOrder = true inverseBoundsEvaluationOrder = true
) )
private fun createConstBoundedForInReversedUntilGenerator( private fun createConstBoundedForInReversedUntilGenerator(
codegen: ExpressionCodegen, codegen: ExpressionCodegen,
@@ -6,12 +6,10 @@
package org.jetbrains.kotlin.codegen.range package org.jetbrains.kotlin.codegen.range
import org.jetbrains.kotlin.codegen.ExpressionCodegen import org.jetbrains.kotlin.codegen.ExpressionCodegen
import org.jetbrains.kotlin.codegen.StackValue
import org.jetbrains.kotlin.codegen.range.forLoop.ForLoopGenerator import org.jetbrains.kotlin.codegen.range.forLoop.ForLoopGenerator
import org.jetbrains.kotlin.codegen.range.inExpression.InExpressionGenerator import org.jetbrains.kotlin.codegen.range.inExpression.InExpressionGenerator
import org.jetbrains.kotlin.psi.KtForExpression import org.jetbrains.kotlin.psi.KtForExpression
import org.jetbrains.kotlin.psi.KtSimpleNameExpression import org.jetbrains.kotlin.psi.KtSimpleNameExpression
import org.jetbrains.kotlin.types.KotlinType
import org.jetbrains.org.objectweb.asm.Type import org.jetbrains.org.objectweb.asm.Type
import org.jetbrains.org.objectweb.asm.commons.InstructionAdapter import org.jetbrains.org.objectweb.asm.commons.InstructionAdapter
@@ -16,9 +16,8 @@
package org.jetbrains.kotlin.codegen.range package org.jetbrains.kotlin.codegen.range
import org.jetbrains.kotlin.codegen.* import org.jetbrains.kotlin.codegen.AsmUtil
import org.jetbrains.kotlin.descriptors.CallableDescriptor import org.jetbrains.kotlin.codegen.StackValue
import org.jetbrains.kotlin.resolve.calls.model.ResolvedCall
import org.jetbrains.org.objectweb.asm.Type import org.jetbrains.org.objectweb.asm.Type
import org.jetbrains.org.objectweb.asm.commons.InstructionAdapter import org.jetbrains.org.objectweb.asm.commons.InstructionAdapter