refactoring: inlined static factory methods

This commit is contained in:
Svetlana Isakova
2013-10-16 16:25:20 +04:00
parent acf987ae5b
commit 66678cdda9
3 changed files with 4 additions and 12 deletions
@@ -29,11 +29,7 @@ public class DoubleValueTypeConstructor extends NumberValueTypeConstructor {
private final List<JetType> supertypes;
public static DoubleValueTypeConstructor create(double value) {
return new DoubleValueTypeConstructor(value);
}
private DoubleValueTypeConstructor(double value) {
public DoubleValueTypeConstructor(double value) {
this.value = value;
// order of types matters
// 'getPrimitiveNumberType' returns first of supertypes that is a subtype of expected type
@@ -27,11 +27,7 @@ public class IntegerValueTypeConstructor extends NumberValueTypeConstructor {
private final long value;
private final Collection<JetType> supertypes = Lists.newArrayList();
public static IntegerValueTypeConstructor create(long value) {
return new IntegerValueTypeConstructor(value);
}
private IntegerValueTypeConstructor(long value) {
public IntegerValueTypeConstructor(long value) {
// order of types matters
// 'getPrimitiveNumberType' returns first of supertypes that is a subtype of expected type
// for expected type 'Any' result type 'Int' should be returned
@@ -139,13 +139,13 @@ public class BasicExpressionTypingVisitor extends ExpressionTypingVisitor {
if (elementType == JetNodeTypes.INTEGER_CONSTANT) {
Long longValue = CompileTimeConstantResolver.parseLongValue(text);
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) {
Double doubleValue = CompileTimeConstantResolver.parseDoubleValue(text);
if (doubleValue != null) {
return createNumberValueTypeInfo(DoubleValueTypeConstructor.create(doubleValue), doubleValue, context.dataFlowInfo);
return createNumberValueTypeInfo(new DoubleValueTypeConstructor(doubleValue), doubleValue, context.dataFlowInfo);
}
}
}