public final AnAction @NotNull [] getChildren(@NotNull ActionManager actionManager) {
    int modCount;
    AnAction[] actionOrStubs;
    synchronized (this) {
      modCount = myModificationStamp;
      actionOrStubs = getChildActionsOrStubs();
    }
    while (true) {
      Map<ActionStubBase, AnAction> stubMap = null;
      boolean hasNulls = false;
      for (AnAction o : actionOrStubs) {
        hasNulls |= o == null;
        if (!(o instanceof ActionStubBase stub)) continue;
        try {
          AnAction action = actionManager.getAction(stub.getId());
          if (action != null) {
            if (stubMap == null) stubMap = new HashMap<>();
            stubMap.put(stub, action);
          }
        }
        catch (ProcessCanceledException ex) {
          throw ex;
        }
        catch (Throwable ex) {
          LOG.error(ex);
        }
      }
      if (stubMap == null && !hasNulls) {
        return actionOrStubs;
      }
      synchronized (this) {
        if (modCount != myModificationStamp) {
          modCount = myModificationStamp;
          actionOrStubs = getChildActionsOrStubs();
        }
        else {
          replaceStubsAndNulls(stubMap != null ? stubMap : Collections.emptyMap());
          return getChildActionsOrStubs();
        }
      }
    }
  }
public final AnAction @NotNull [] getChildren(@NotNull ActionManager actionManager)