code: public static ChronoFormatter<Moment> ofGenericMomentPattern(
          String pattern,
          Locale locale
      ) {
  
          // Note: ---------------------------------------------------------------------------
          //      Style-based formatters with override are not possible
          //      because there are no non-iso-generic format patterns including date AND time
          // ---------------------------------------------------------------------------------
  
          try {
              Chronology<CalendarDate> overrideCalendar = CalendarConverter.getChronology(locale);
              Builder<Moment> builder = new Builder<>(Moment.axis(), locale, overrideCalendar);
              return builder.addPattern(pattern, PatternType.CLDR).build();
          } catch (IllegalStateException ise) {
              throw new IllegalArgumentException(ise);
          }
  
      }
docs: /*[deutsch]
  <p>Konstruiert einen generischen Formatierer f&uuml;r universelle Zeitstempel mit Hilfe
  eines CLDR-Formatmusters und einer von der angegebenen Sprache abgeleiteten Kalenderchronologie. </p>
  
  <p>Wenn die angegebene {@code locale} eine Unicode-ca-Erweiterung hat, dann wird Time4J versuchen,
  eine geeignete Kalenderchronologie zu laden, falls vorhanden. Sonst wird ISO-8601 verwendet. Zum
  Formatieren ist es notwendig, die Zeitzone am fertiggestellten Formatierer zu setzen.</p>
  
  @param   pattern     format pattern
  @param   locale      format locale
  @return  new {@code ChronoFormatter}-instance
  @throws  IllegalArgumentException if resolving of pattern fails or a requested calendar cannot be found
  @see     #ofPattern(String, PatternType, Locale, Chronology)
  @see     #with(Locale)
  @see     PatternType#CLDR
  @see     Locale#forLanguageTag(String)
  @since   4.27