code: func Projects(c context.Context, a Authority, path string, r MultiResolver, meta *[]*config.Meta) error {
  	return getAll(c, a, backend.GetAllProject, path, r, meta)
  }
docs: // Projects retrieves all named project configurations.
  //
  // r, if not nil, is a MultiResolver that will load the configuration data.
  // If nil, the configuration data will be discarded (useful if you only care
  // about metas). If the MultiResolver operates on a slice (which it probably
  // will), each meta and/or error index will correspond to its slice index.
  //
  // If meta is not nil, it will be populated with a slice of *Meta entries
  // for each loaded configuration, in the same order that r receives them. If
  // r resolves to a slice, the indexes for each resolved slice entry and meta
  // entry should align unless r is doing something funky.
  //
  // Two types of failure may happen here. A systemic failure fails to load the
  // set of project configurations. This will be returned directly.
  //
  // A resolver failure happens when the configuratiokns load, but could not be
  // resolved. In this case, any successful resolutions and "meta" will be
  // populated and an errors.MultiError will be returned containing non-nil
  // errors at indices whose configs failed to resolve.