nodes: 0, module; 1, function_definition; 2, function_name:iter_items; 3, parameters; 4, block; 5, identifier:cls; 6, identifier:repo; 7, default_parameter; 8, expression_statement; 9, return_statement; 10, identifier:common_path; 11, None; 12, comment:"""Find all refs in the repository
  
          :param repo: is the Repo
  
          :param common_path:
              Optional keyword argument to the path which is to be shared by all
              returned Ref objects.
              Defaults to class specific portion if None assuring that only
              refs suitable for the actual class are returned.
  
          :return:
              git.SymbolicReference[], each of them is guaranteed to be a symbolic
              ref which is not detached and pointing to a valid ref
  
              List is lexicographically sorted
              The returned objects represent actual subclasses, such as Head or TagReference"""; 13, generator_expression; 14, identifier:r; 15, for_in_clause; 16, if_clause; 17, identifier:r; 18, call; 19, boolean_operator; 20, attribute; 21, argument_list; 22, comparison_operator:r.__class__ == SymbolicReference; 23, not_operator; 24, identifier:cls; 25, identifier:_iter_items; 26, identifier:repo; 27, identifier:common_path; 28, attribute; 29, identifier:SymbolicReference; 30, attribute; 31, identifier:r; 32, identifier:__class__; 33, identifier:r; 34, identifier:is_detached
code: def iter_items(cls, repo, common_path=None):
          """Find all refs in the repository
  
          :param repo: is the Repo
  
          :param common_path:
              Optional keyword argument to the path which is to be shared by all
              returned Ref objects.
              Defaults to class specific portion if None assuring that only
              refs suitable for the actual class are returned.
  
          :return:
              git.SymbolicReference[], each of them is guaranteed to be a symbolic
              ref which is not detached and pointing to a valid ref
  
              List is lexicographically sorted
              The returned objects represent actual subclasses, such as Head or TagReference"""
          return (r for r in cls._iter_items(repo, common_path) if r.__class__ == SymbolicReference or not r.is_detached)