private JReferenceType merge(JReferenceType source, JReferenceType target) { JReferenceType result; if (program.typeOracle.castSucceedsTrivially( source.getUnderlyingType(), target.getUnderlyingType())) { result = source; } else { result = target; } return result; }
private JReferenceType merge(JReferenceType source, JReferenceType target) { JReferenceType result; if (program.typeOracle.canTriviallyCast( source.getUnderlyingType(), target.getUnderlyingType())) { result = source; } else { result = target; } if ((!target.canBeNull())) { result = result.getNonNull(); } return result; }