docs: def vdatainfo(self, listAttr=0):
          """Return info about all the file vdatas.
  
          Args::
  
            listAttr   Set to 0 to ignore vdatas used to store attribute
                       values, 1 to list them (see the VD._isattr readonly
                       attribute)
  
          Returns::
  
            List of vdata descriptions. Each vdata is described as
            a 9-element tuple, composed of the following:
  
            - vdata name
            - vdata class
            - vdata reference number
            - vdata number of records
            - vdata number of fields
            - vdata number of attributes
            - vdata record size in bytes
            - vdata tag number
            - vdata interlace mode
  
  
          C library equivalent : no equivalent
                                                   """
  
          lst = []
          ref = -1      # start at beginning
          while True:
              try:
                  nxtRef = self.next(ref)
              except HDF4Error:    # no vdata left
                  break
              # Attach the vdata and check for an "attribute" vdata.
              ref = nxtRef
              vdObj = self.attach(ref)
              if listAttr or not vdObj._isattr:
                  # Append a list of vdata properties.
                  lst.append((vdObj._name,
                              vdObj._class,
                              vdObj._refnum,
                              vdObj._nrecs,
                              vdObj._nfields,
                              vdObj._nattrs,
                              vdObj._recsize,
                              vdObj._tag,
                              vdObj._interlace))
              vdObj.detach()
          return lst