boolean (TypeView left, TypeView right) { Pair<PsiType, PsiType> leftPair = left.getTypePair(); Pair<PsiType, PsiType> rightPair = right.getTypePair(); PsiType leftOrigin = leftPair.getFirst(); PsiType rightOrigin = rightPair.getFirst(); boolean isDirectlyAssignable = TypeConversionUtil.isAssignable(leftOrigin, rightOrigin); return TypeConversionUtil.isAssignable(isDirectlyAssignable ? leftPair.getSecond() : ((PsiEllipsisType)leftPair.getSecond()).getComponentType(), rightPair.getSecond()); }