code: def token_or_comment_or_line_generator(buffer):
      
      tok_or_com_gen = token_or_comment_generator(buffer)
      line_gen = line_generator(buffer)
  
      tok_or_com = next(tok_or_com_gen, None)
      line = next(line_gen, None)
  
      while tok_or_com is not None or line is not None:
          if tok_or_com is None or (line is not None and
                                    tok_or_com.line_no > line.line_no):
              yield line
              line = next(line_gen, None)
          else:
              yield tok_or_com
              tok_or_com = next(tok_or_com_gen, None)
docs: Generator that mixes tokens and lines, ordering them by line number