code: def iter_entry_points(self, group, name=None):
          
          return (
              entry
              for dist in self
              for entry in dist.get_entry_map(group).values()
              if name is None or name == entry.name
          )
docs: Yield entry point objects from `group` matching `name`
  
          If `name` is None, yields all entry points in `group` from all
          distributions in the working set, otherwise only ones matching
          both `group` and `name` are yielded (in distribution order).