parameters: (self, use_user_site)
return_statement: return True
docstring: Find an installed distribution that satisfies or conflicts
          with this requirement, and set self.satisfied_by or
          self.conflicts_with appropriately.
docstring_summary: Find an installed distribution that satisfies or conflicts
          with this requirement, and set self.satisfied_by or
          self.conflicts_with appropriately.
docstring_tokens: Find an installed distribution that satisfies or conflicts with this requirement and set self . satisfied_by or self . conflicts_with appropriately .
function: def check_if_exists(self, use_user_site):
          # type: (bool) -> bool
          """Find an installed distribution that satisfies or conflicts
          with this requirement, and set self.satisfied_by or
          self.conflicts_with appropriately.
          """
          if self.req is None:
              return False
          try:
              # get_distribution() will resolve the entire list of requirements
              # anyway, and we've already determined that we need the requirement
              # in question, so strip the marker so that we don't try to
              # evaluate it.
              no_marker = Requirement(str(self.req))
              no_marker.marker = None
              self.satisfied_by = pkg_resources.get_distribution(str(no_marker))
              if self.editable and self.satisfied_by:
                  self.conflicts_with = self.satisfied_by
                  # when installing editables, nothing pre-existing should ever
                  # satisfy
                  self.satisfied_by = None
                  return True
          except pkg_resources.DistributionNotFound:
              return False
          except pkg_resources.VersionConflict:
              existing_dist = pkg_resources.get_distribution(
                  self.req.name
              )
              if use_user_site:
                  if dist_in_usersite(existing_dist):
                      self.conflicts_with = existing_dist
                  elif (running_under_virtualenv() and
                          dist_in_site_packages(existing_dist)):
                      raise InstallationError(
                          "Will not install to the user site because it will "
                          "lack sys.path precedence to %s in %s" %
                          (existing_dist.project_name, existing_dist.location)
                      )
              else:
                  self.conflicts_with = existing_dist
          return True
function_tokens: def check_if_exists ( self , use_user_site ) : # type: (bool) -> bool if self . req is None : return False try : # get_distribution() will resolve the entire list of requirements # anyway, and we've already determined that we need the requirement # in question, so strip the marker so that we don't try to # evaluate it. no_marker = Requirement ( str ( self . req ) ) no_marker . marker = None self . satisfied_by = pkg_resources . get_distribution ( str ( no_marker ) ) if self . editable and self . satisfied_by : self . conflicts_with = self . satisfied_by # when installing editables, nothing pre-existing should ever # satisfy self . satisfied_by = None return True except pkg_resources . DistributionNotFound : return False except pkg_resources . VersionConflict : existing_dist = pkg_resources . get_distribution ( self . req . name ) if use_user_site : if dist_in_usersite ( existing_dist ) : self . conflicts_with = existing_dist elif ( running_under_virtualenv ( ) and dist_in_site_packages ( existing_dist ) ) : raise InstallationError ( "Will not install to the user site because it will " "lack sys.path precedence to %s in %s" % ( existing_dist . project_name , existing_dist . location ) ) else : self . conflicts_with = existing_dist return True