code: func (b *Backend) GetAll(c context.Context, t backend.GetAllTarget, path string, p backend.Params) (
  	[]*config.Config, error) {
  
  	items, err := b.B.GetAll(c, t, path, p)
  	if err != nil {
  		return nil, err
  	}
  
  	if !p.FormatSpec.Unformatted() {
  		formatter, err := getFormatter(p.FormatSpec.Formatter)
  		if err != nil {
  			return nil, errors.Annotate(err, "failed to get formatter for %q, data %q",
  				p.FormatSpec.Formatter, p.FormatSpec.Data).Err()
  		}
  
  		lme := errors.NewLazyMultiError(len(items))
  		for i, item := range items {
  			if err := b.formatItem(item, formatter, p.FormatSpec); err != nil {
  				lme.Assign(i, err)
  			}
  		}
  
  		if err := lme.Get(); err != nil {
  			return nil, errors.Annotate(err, "failed to format items to %q, data %q",
  				p.FormatSpec.Formatter, p.FormatSpec.Data).Err()
  		}
  	}
  	return items, nil
  }
docs: // GetAll implements backend.B.