code: public DateTimeFormatterBuilder appendOptional(DateTimeFormatter formatter) {
          Jdk8Methods.requireNonNull(formatter, "formatter");
          appendInternal(formatter.toPrinterParser(true));
          return this;
      }
docs: Appends a formatter to the builder which will optionally print/parse.
  <p>
  This method has the same effect as appending each of the constituent
  parts directly to this builder surrounded by an {@link #optionalStart()} and
  {@link #optionalEnd()}.
  <p>
  The formatter will print if data is available for all the fields contained within it.
  The formatter will parse if the string matches, otherwise no error is returned.
  
  @param formatter  the formatter to add, not null
  @return this, for chaining, not null