docs: def _decode_ds(cls, ds, gridfile=None, decode_coords=True,
                     decode_times=True):
          """
          Static method to decode coordinates and time informations
  
          This method interpretes absolute time informations (stored with units
          ``'day as %Y%m%d.%f'``) and coordinates
  
          Parameters
          ----------
          %(CFDecoder.decode_coords.parameters)s
          decode_times : bool, optional
              If True, decode times encoded in the standard NetCDF datetime
              format into datetime objects. Otherwise, leave them encoded as
              numbers.
          decode_coords : bool, optional
              If True, decode the 'coordinates' attribute to identify coordinates
              in the resulting dataset."""
          if decode_coords:
              ds = cls.decode_coords(ds, gridfile=gridfile)
          if decode_times:
              for k, v in six.iteritems(ds.variables):
                  # check for absolute time units and make sure the data is not
                  # already decoded via dtype check
                  if v.attrs.get('units', '') == 'day as %Y%m%d.%f' and (
                          np.issubdtype(v.dtype, np.float64)):
                      decoded = xr.Variable(
                          v.dims, AbsoluteTimeDecoder(v), attrs=v.attrs,
                          encoding=v.encoding)
                      ds.update({k: decoded})
          return ds