private TypeReference mergeVariableType(final List<VariableInfo> info) { TypeReference result = first(info).variable.getType(); for (int i = 0; i < info.size(); i++) { final VariableInfo variableInfo = info.get(i); final TypeReference t = variableInfo.variable.getType(); if (result == BuiltinTypes.Null) { result = t; } else if (t == BuiltinTypes.Null) { //noinspection UnnecessaryContinue continue; } else { result = MetadataHelper.findCommonSuperType(result, t); } } return result != null ? result : BuiltinTypes.Object; }
private TypeReference mergeVariableType(final List<VariableInfo> info) { TypeReference result = first(info).variable.getType(); for (int i = 0; i < info.size(); i++) { final VariableInfo variableInfo = info.get(i); final TypeReference t = variableInfo.variable.getType(); if (result == BuiltinTypes.Null) { result = t; } else if (t == BuiltinTypes.Null) { //noinspection UnnecessaryContinue continue; } else { result = MetadataHelper.findCommonSuperType(result, t); } } return result != null ? result : BuiltinTypes.Object; }
private TypeReference mergeVariableType(final List<VariableInfo> info) { TypeReference result = first(info).variable.getType(); for (int i = 0; i < info.size(); i++) { final VariableInfo variableInfo = info.get(i); final TypeReference t = variableInfo.variable.getType(); if (result == BuiltinTypes.Null) { result = t; } else if (t == BuiltinTypes.Null) { //noinspection UnnecessaryContinue continue; } else { result = MetadataHelper.findCommonSuperType(result, t); } } return result != null ? result : BuiltinTypes.Object; }
private TypeReference doBinaryPromotion(final ResolveResult left, final ResolveResult right) { final TypeReference leftType = left.getType(); final TypeReference rightType = right.getType(); if (leftType == null) { return rightType; } if (rightType == null) { return leftType; } if (StringUtilities.equals(leftType.getInternalName(), "java/lang/String")) { return leftType; } if (StringUtilities.equals(rightType.getInternalName(), "java/lang/String")) { return rightType; } return MetadataHelper.findCommonSuperType(leftType, rightType); }
private TypeReference typeWithMoreInformation(final TypeReference leftPreferred, final TypeReference rightPreferred) { final int left = getInformationAmount(leftPreferred); final int right = getInformationAmount(rightPreferred); if (left < right) { return rightPreferred; } if (left > right) { return leftPreferred; } if (leftPreferred != null && rightPreferred != null) { return MetadataHelper.findCommonSuperType( leftPreferred.isGenericDefinition() ? new RawType(leftPreferred) : leftPreferred, rightPreferred.isGenericDefinition() ? new RawType(rightPreferred) : rightPreferred ); } return leftPreferred; }
private TypeReference doBinaryPromotion(final ResolveResult left, final ResolveResult right) { final TypeReference leftType = left.getType(); final TypeReference rightType = right.getType(); if (leftType == null) { return rightType; } if (rightType == null) { return leftType; } if (StringUtilities.equals(leftType.getInternalName(), "java/lang/String")) { return leftType; } if (StringUtilities.equals(rightType.getInternalName(), "java/lang/String")) { return rightType; } return MetadataHelper.findCommonSuperType(leftType, rightType); }
commonSuperType = MetadataHelper.findCommonSuperType(existingMapping, mappedType);
private TypeReference doBinaryPromotion(final ResolveResult left, final ResolveResult right) { final TypeReference leftType = left.getType(); final TypeReference rightType = right.getType(); if (leftType == null) { return rightType; } if (rightType == null) { return leftType; } if (StringUtilities.equals(leftType.getInternalName(), "java/lang/String")) { return leftType; } if (StringUtilities.equals(rightType.getInternalName(), "java/lang/String")) { return rightType; } return MetadataHelper.findCommonSuperType(leftType, rightType); }
private TypeReference typeWithMoreInformation(final TypeReference leftPreferred, final TypeReference rightPreferred) { final int left = getInformationAmount(leftPreferred); final int right = getInformationAmount(rightPreferred); if (left < right) { return rightPreferred; } if (left > right) { return leftPreferred; } if (leftPreferred != null && rightPreferred != null) { return MetadataHelper.findCommonSuperType( leftPreferred.isGenericDefinition() ? new RawType(leftPreferred) : leftPreferred, rightPreferred.isGenericDefinition() ? new RawType(rightPreferred) : rightPreferred ); } return leftPreferred; }
commonSuperType = MetadataHelper.findCommonSuperType(existingMapping, mappedType);
commonSuperType = MetadataHelper.findCommonSuperType(existingMapping, mappedType);
commonSuperType = MetadataHelper.findCommonSuperType(existingMapping, mappedType);
private TypeReference typeWithMoreInformation(final TypeReference leftPreferred, final TypeReference rightPreferred) { if (leftPreferred == rightPreferred) { return leftPreferred; } final int left = getInformationAmount(leftPreferred); final int right = getInformationAmount(rightPreferred); if (left < right) { return rightPreferred; } if (left > right) { return leftPreferred; } if (leftPreferred != null && rightPreferred != null) { return MetadataHelper.findCommonSuperType( leftPreferred.isGenericDefinition() ? new RawType(leftPreferred) : leftPreferred, rightPreferred.isGenericDefinition() ? new RawType(rightPreferred) : rightPreferred ); } return leftPreferred; }
commonSuperType = MetadataHelper.findCommonSuperType(existingMapping, mappedType);
private TypeReference doBinaryPromotionStrict(final ResolveResult left, final ResolveResult right) { if (left == null || right == null) { return null; } TypeReference leftType = left.getType(); TypeReference rightType = right.getType(); if (leftType == null || rightType == null) { return null; } leftType = MetadataHelper.getUnderlyingPrimitiveTypeOrSelf(leftType); rightType = MetadataHelper.getUnderlyingPrimitiveTypeOrSelf(rightType); if (StringUtilities.equals(leftType.getInternalName(), "java/lang/String")) { return leftType; } if (StringUtilities.equals(rightType.getInternalName(), "java/lang/String")) { return rightType; } return MetadataHelper.findCommonSuperType(leftType, rightType); }
private TypeReference doBinaryPromotionStrict(final ResolveResult left, final ResolveResult right) { if (left == null || right == null) { return null; } TypeReference leftType = left.getType(); TypeReference rightType = right.getType(); if (leftType == null || rightType == null) { return null; } leftType = MetadataHelper.getUnderlyingPrimitiveTypeOrSelf(leftType); rightType = MetadataHelper.getUnderlyingPrimitiveTypeOrSelf(rightType); if (StringUtilities.equals(leftType.getInternalName(), "java/lang/String")) { return leftType; } if (StringUtilities.equals(rightType.getInternalName(), "java/lang/String")) { return rightType; } return MetadataHelper.findCommonSuperType(leftType, rightType); }
private TypeReference doBinaryPromotionStrict(final ResolveResult left, final ResolveResult right) { if (left == null || right == null) { return null; } TypeReference leftType = left.getType(); TypeReference rightType = right.getType(); if (leftType == null || rightType == null) { return null; } leftType = MetadataHelper.getUnderlyingPrimitiveTypeOrSelf(leftType); rightType = MetadataHelper.getUnderlyingPrimitiveTypeOrSelf(rightType); if (StringUtilities.equals(leftType.getInternalName(), "java/lang/String")) { return leftType; } if (StringUtilities.equals(rightType.getInternalName(), "java/lang/String")) { return rightType; } return MetadataHelper.findCommonSuperType(leftType, rightType); }
final TypeReference resultType = MetadataHelper.findCommonSuperType( leftResult.getType(), rightResult.getType()
final TypeReference resultType = MetadataHelper.findCommonSuperType( leftResult.getType(), rightResult.getType()
final TypeReference resultType = MetadataHelper.findCommonSuperType( leftResult.getType(), rightResult.getType()