docs: def read_object_array(f, data, options):
      """ Reads an array of objects recursively.
  
      Read the elements of the given HDF5 Reference array recursively
      in the and constructs a ``numpy.object_`` array from its elements,
      which is returned.
  
      Parameters
      ----------
      f : h5py.File
          The HDF5 file handle that is open.
      data : numpy.ndarray of h5py.Reference
          The array of HDF5 References to read and make an object array
          from.
      options : hdf5storage.core.Options
          hdf5storage options object.
  
      Raises
      ------
      NotImplementedError
          If reading the object from file is currently not supported.
  
      Returns
      -------
      obj_array : numpy.ndarray of numpy.object\_
          The Python object array containing the items pointed to by
          `data`.
  
      See Also
      --------
      write_object_array
      hdf5storage.Options.group_for_references
      h5py.Reference
  
      """
      # Go through all the elements of data and read them using their
      # references, and the putting the output in new object array.
      data_derefed = np.zeros(shape=data.shape, dtype='object')
      for index, x in np.ndenumerate(data):
          data_derefed[index] = read_data(f, None, None,
                                          options,
                                          dsetgrp=f[x])
      return data_derefed