code: func newField(path, index, name string, opts FieldOption) (*Field, error) {
  	// Apply functional option.
  	fo := FieldOptions{}
  	err := opts(&fo)
  	if err != nil {
  		return nil, errors.Wrap(err, "applying option")
  	}
  
  	f := &Field{
  		path:  path,
  		index: index,
  		name:  name,
  
  		viewMap: make(map[string]*view),
  
  		rowAttrStore: nopStore,
  
  		broadcaster: NopBroadcaster,
  		Stats:       stats.NopStatsClient,
  
  		options: applyDefaultOptions(fo),
  
  		remoteAvailableShards: roaring.NewBitmap(),
  
  		logger: logger.NopLogger,
  	}
  	return f, nil
  }
docs: // newField returns a new instance of field (without name validation).