src/core/formatErrors.js
function formatErrors(errors, formatters, errorType) {
  const format = (formatter) => formatter(errors, errorType) || [];
  const flatten = (accum, curr) => accum.concat(curr);

  return formatters.map(format).reduce(flatten, [])
}
function formatErrors(errors, formatters, errorType) {
  const format = (formatter) => formatter(errors, errorType) || [];
  const flatten = (accum, curr) => accum.concat(curr);

  return formatters.map(format).reduce(flatten, [])
}
function formatErrors ( errors , formatters , errorType ) { const format = ( formatter ) => formatter ( errors , errorType ) || [ ] ; const flatten = ( accum , curr ) => accum . concat ( curr ) ; return formatters . map ( format ) . reduce ( flatten , [ ] ) }
Applies formatters to all AnnotatedErrors.

A formatter has the following signature: FormattedError => Array<String>.
It takes a formatted error produced by a transformer and returns a list
of log statements to print.
Applies formatters to all AnnotatedErrors .