refactoring: inlined static factory methods
This commit is contained in:
+1
-5
@@ -29,11 +29,7 @@ public class DoubleValueTypeConstructor extends NumberValueTypeConstructor {
|
|||||||
private final List<JetType> supertypes;
|
private final List<JetType> supertypes;
|
||||||
|
|
||||||
|
|
||||||
public static DoubleValueTypeConstructor create(double value) {
|
public DoubleValueTypeConstructor(double value) {
|
||||||
return new DoubleValueTypeConstructor(value);
|
|
||||||
}
|
|
||||||
|
|
||||||
private DoubleValueTypeConstructor(double value) {
|
|
||||||
this.value = value;
|
this.value = value;
|
||||||
// order of types matters
|
// order of types matters
|
||||||
// 'getPrimitiveNumberType' returns first of supertypes that is a subtype of expected type
|
// 'getPrimitiveNumberType' returns first of supertypes that is a subtype of expected type
|
||||||
|
|||||||
+1
-5
@@ -27,11 +27,7 @@ public class IntegerValueTypeConstructor extends NumberValueTypeConstructor {
|
|||||||
private final long value;
|
private final long value;
|
||||||
private final Collection<JetType> supertypes = Lists.newArrayList();
|
private final Collection<JetType> supertypes = Lists.newArrayList();
|
||||||
|
|
||||||
public static IntegerValueTypeConstructor create(long value) {
|
public IntegerValueTypeConstructor(long value) {
|
||||||
return new IntegerValueTypeConstructor(value);
|
|
||||||
}
|
|
||||||
|
|
||||||
private IntegerValueTypeConstructor(long value) {
|
|
||||||
// order of types matters
|
// order of types matters
|
||||||
// 'getPrimitiveNumberType' returns first of supertypes that is a subtype of expected type
|
// 'getPrimitiveNumberType' returns first of supertypes that is a subtype of expected type
|
||||||
// for expected type 'Any' result type 'Int' should be returned
|
// for expected type 'Any' result type 'Int' should be returned
|
||||||
|
|||||||
+2
-2
@@ -139,13 +139,13 @@ public class BasicExpressionTypingVisitor extends ExpressionTypingVisitor {
|
|||||||
if (elementType == JetNodeTypes.INTEGER_CONSTANT) {
|
if (elementType == JetNodeTypes.INTEGER_CONSTANT) {
|
||||||
Long longValue = CompileTimeConstantResolver.parseLongValue(text);
|
Long longValue = CompileTimeConstantResolver.parseLongValue(text);
|
||||||
if (longValue != null) {
|
if (longValue != null) {
|
||||||
return createNumberValueTypeInfo(IntegerValueTypeConstructor.create(longValue), longValue, context.dataFlowInfo);
|
return createNumberValueTypeInfo(new IntegerValueTypeConstructor((long) longValue), longValue, context.dataFlowInfo);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (elementType == JetNodeTypes.FLOAT_CONSTANT) {
|
else if (elementType == JetNodeTypes.FLOAT_CONSTANT) {
|
||||||
Double doubleValue = CompileTimeConstantResolver.parseDoubleValue(text);
|
Double doubleValue = CompileTimeConstantResolver.parseDoubleValue(text);
|
||||||
if (doubleValue != null) {
|
if (doubleValue != null) {
|
||||||
return createNumberValueTypeInfo(DoubleValueTypeConstructor.create(doubleValue), doubleValue, context.dataFlowInfo);
|
return createNumberValueTypeInfo(new DoubleValueTypeConstructor(doubleValue), doubleValue, context.dataFlowInfo);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user