code: func NewValue(
  	opts Options,
  ) Value {
  	v := &value{
  		opts:           opts,
  		log:            opts.InstrumentOptions().Logger(),
  		newUpdatableFn: opts.NewUpdatableFn(),
  		getUpdateFn:    opts.GetUpdateFn(),
  		processFn:      opts.ProcessFn(),
  	}
  	v.processWithLockFn = v.processWithLock
  	return v
  }
docs: // NewValue creates a new value.