docs: def info(self):
          """Retrieves information about the dataset.
  
          Args::
  
            no argument
  
          Returns::
  
            5-element tuple holding:
  
            - dataset name
            - dataset rank (number of dimensions)
            - dataset shape, that is a list giving the length of each
              dataset dimension; if the first dimension is unlimited, then
              the first value of the list gives the current length of the
              unlimited dimension
            - data type (one of the SDC.xxx values)
            - number of attributes defined for the dataset
  
          C library equivalent : SDgetinfo
                                                         """
  
          buf = _C.array_int32(_C.H4_MAX_VAR_DIMS)
          status, sds_name, rank, data_type, n_attrs = \
                  _C.SDgetinfo(self._id, buf)
          _checkErr('info', status, "cannot execute")
          dim_sizes = _array_to_ret(buf, rank)
          return sds_name, rank, dim_sizes, data_type, n_attrs