boolean addRoot(TypeMigrationUsageInfo usageInfo, PsiType type, PsiElement place, boolean alreadyProcessed) {
    rememberRootTrace(usageInfo, type, place, alreadyProcessed);
    if (!alreadyProcessed && !(usageInfo.getElement() instanceof PsiExpression) && !getTypeEvaluator().setType(usageInfo, type)) {
      alreadyProcessed = true;
    }

    if (!alreadyProcessed) myMigrationRoots.addFirst(Pair.create(usageInfo, type));
    return alreadyProcessed;
  }
boolean addRoot(TypeMigrationUsageInfo usageInfo, PsiType type, PsiElement place, boolean alreadyProcessed)