docs: def addMsrunContainers(mainContainer, subContainer):
      """Adds the complete content of all specfile entries from the subContainer
      to the mainContainer. However if a specfile of ``subContainer.info`` is
      already present in ``mainContainer.info`` its contents are not added to the
      mainContainer.
  
      :param mainContainer: :class:`MsrunContainer`
      :param subContainer: :class:`MsrunContainer`
  
      .. warning:: does not generate new items, all items added to the
          ``mainContainer`` are still present in the ``subContainer`` and changes
          made to elements of one container also affects the elements of the other
          one (ie elements share same memory location).
      """
      typeToContainer = {'rm': 'rmc', 'ci': 'cic', 'smi': 'smic',
                         'sai': 'saic', 'si': 'sic'
                         }
      for specfile in subContainer.info:
          if specfile in mainContainer.info:
              continue
  
          mainContainer.addSpecfile(specfile, subContainer.info[specfile]['path'])
          for datatype, status in listitems(subContainer.info[specfile]['status']):
              if not status:
                  continue
              datatypeContainer = typeToContainer[datatype]
              dataTypeContainer = getattr(mainContainer, datatypeContainer)
              subContainerData = getattr(subContainer,
                                         datatypeContainer
                                         )[specfile]
              dataTypeContainer[specfile] = subContainerData
              mainContainer.info[specfile]['status'][datatype] = True