private static void addFieldInitialization(@NotNull List<? extends PsiMethod> constructors,
                                             @NotNull PsiField field,
                                             @NotNull ModPsiUpdater updater) {
    Project project = field.getProject();
    if (constructors.isEmpty()) return;

    final LookupElement[] suggestedInitializers = AddVariableInitializerFix.suggestInitializer(field);

    final List<SmartPsiElementPointer<PsiExpression>> rExprPointers = new ArrayList<>(constructors.size());
    for (PsiMethod constructor : constructors) {
      PsiExpression initializer = addFieldInitialization(constructor, suggestedInitializers, field, project);
      rExprPointers.add(SmartPointerManager.getInstance(project).createSmartPsiElementPointer(initializer));
    }
    Document doc = Objects.requireNonNull(field.getContainingFile().getViewProvider().getDocument());
    PsiDocumentManager.getInstance(project).doPostponedOperationsAndUnblockDocument(doc);
    List<PsiExpression> rExpressions = ContainerUtil.mapNotNull(rExprPointers, SmartPsiElementPointer::getElement);
    runAssignmentTemplate(rExpressions, suggestedInitializers, updater);
  }
private static void addFieldInitialization(@NotNull List<? extends PsiMethod> constructors,
                                             @NotNull PsiField field,
                                             @NotNull ModPsiUpdater updater)