code: private static Parameter wrapHexParameter(final FormatOptions options, int index) {
      // %h / %H is really just %x / %X on the hashcode.
      return new Parameter(options, index) {
        @Override
        protected void accept(ParameterVisitor visitor, Object value) {
          visitor.visit(value.hashCode(), FormatChar.HEX, getFormatOptions());
        }
  
        @Override
        public String getFormat() {
          return options.shouldUpperCase() ? "%H" : "%h";
        }
      };
    }
docs: Static method so the anonymous synthetic parameter is static, rather than an inner class.