code: def add_distribution(self, dist):
          
          logger.debug('adding distribution %s', dist)
          name = dist.key
          self.dists_by_name[name] = dist
          self.dists[(name, dist.version)] = dist
          for p in dist.provides:
              name, version = parse_name_and_version(p)
              logger.debug('Add to provided: %s, %s, %s', name, version, dist)
              self.provided.setdefault(name, set()).add((version, dist))
docs: Add a distribution to the finder. This will update internal information
          about who provides what.
          :param dist: The distribution to add.