code: func handleExtensionsInits(p *Params) gqlerrors.FormattedErrors {
  	errs := gqlerrors.FormattedErrors{}
  	for _, ext := range p.Schema.extensions {
  		func() {
  			// catch panic from an extension init fn
  			defer func() {
  				if r := recover(); r != nil {
  					errs = append(errs, gqlerrors.FormatError(fmt.Errorf("%s.Init: %v", ext.Name(), r.(error))))
  				}
  			}()
  			// update context
  			p.Context = ext.Init(p.Context, p)
  		}()
  	}
  	return errs
  }
docs: // handleExtensionsInits handles all the init functions for all the extensions in the schema