code: func (s *Store) UpdateMatching(dataType interface{}, query *Query, update func(record interface{}) error) error {
  	return s.Bolt().Update(func(tx *bolt.Tx) error {
  		return s.TxUpdateMatching(tx, dataType, query, update)
  	})
  }
docs: // UpdateMatching runs the update function for every record that match the passed in query
  // Note that the type  of record in the update func always has to be a pointer