parameters: (
  
          self,
  
          project_name,       # type: str
  
          specifier=None,     # type: Optional[specifiers.BaseSpecifier]
  
          hashes=None,        # type: Optional[Hashes]
  
      )
return_statement: return candidate_evaluator.compute_best_candidate(candidates)
docstring: Find matches for the given project and specifier.
  
  
  
          :param specifier: An optional object implementing `filter`
  
              (e.g. `packaging.specifiers.SpecifierSet`) to filter applicable
  
              versions.
  
  
  
          :return: A `BestCandidateResult` instance.
docstring_summary: Find matches for the given project and specifier.
docstring_tokens: Find matches for the given project and specifier .
function: def find_best_candidate(
  
          self,
  
          project_name,       # type: str
  
          specifier=None,     # type: Optional[specifiers.BaseSpecifier]
  
          hashes=None,        # type: Optional[Hashes]
  
      ):
  
          # type: (...) -> BestCandidateResult
  
          """Find matches for the given project and specifier.
  
  
  
          :param specifier: An optional object implementing `filter`
  
              (e.g. `packaging.specifiers.SpecifierSet`) to filter applicable
  
              versions.
  
  
  
          :return: A `BestCandidateResult` instance.
  
          """
  
          candidates = self.find_all_candidates(project_name)
  
          candidate_evaluator = self.make_candidate_evaluator(
  
              project_name=project_name,
  
              specifier=specifier,
  
              hashes=hashes,
  
          )
  
          return candidate_evaluator.compute_best_candidate(candidates)
function_tokens: def find_best_candidate ( self , project_name , # type: str specifier = None , # type: Optional[specifiers.BaseSpecifier] hashes = None , # type: Optional[Hashes] ) : # type: (...) -> BestCandidateResult candidates = self . find_all_candidates ( project_name ) candidate_evaluator = self . make_candidate_evaluator ( project_name = project_name , specifier = specifier , hashes = hashes , ) return candidate_evaluator . compute_best_candidate ( candidates )