@Override protected CandidateCompareResult compareByArgumentTypes(AbstractPendingLinkingCandidate<?> right) { CandidateCompareResult result = super.compareByArgumentTypes(right); if (result == CandidateCompareResult.AMBIGUOUS && !right.isTypeLiteral()) { result = compareByNameAndStaticFlag(right); } return result; }
CandidateCompareResult result = compareByArgumentTypes(right, leftBoxing, rightBoxing, leftDemand, rightDemand); switch(result) { case AMBIGUOUS: {
boolean hadIssues = false; CandidateCompareResult argumentTypeResult = compareByArgumentTypes(right, false); switch(argumentTypeResult) { case SUSPICIOUS_OTHER: CandidateCompareResult secondPassArgumentTypes = compareByArgumentTypes(right, true); if (secondPassArgumentTypes == CandidateCompareResult.SUSPICIOUS_OTHER) throw new IllegalStateException();
@Override protected CandidateCompareResult compareByArgumentTypes(AbstractPendingLinkingCandidate<?> right, boolean recompute) { CandidateCompareResult result = super.compareByArgumentTypes(right, recompute); if (result == CandidateCompareResult.AMBIGUOUS && getExpression() instanceof XAssignment) { if (description.isValidStaticState() == right.description.isValidStaticState()) { if (getFeature() instanceof JvmExecutable != right.getFeature() instanceof JvmExecutable) { if (getFeature() instanceof JvmExecutable) { return CandidateCompareResult.OTHER; } return CandidateCompareResult.THIS; } } } return result; }
CandidateCompareResult argumentTypeCompareResult = compareByArgumentTypes(right); switch(argumentTypeCompareResult) { case EQUALLY_INVALID: