original_docstring: 
      Return True if the func_impl is a generator
      :param func_impl:
      :return:
      
docstring: Return True if the func_impl is a generator
docstring_tokens: Return True if the func_impl is a generator
code: def _is_generator_func(func_impl):
      """
      Return True if the func_impl is a generator
      :param func_impl:
      :return:
      """
      if (3, 5) <= sys.version_info < (3, 6):
          # with Python 3.5 isgeneratorfunction returns True for all coroutines
          # however we know that it is NOT possible to have a generator
          # coroutine in python 3.5: PEP525 was not there yet
          return isgeneratorfunction(func_impl) and not iscoroutinefunction(func_impl)
      else:
          return isgeneratorfunction(func_impl)
code_tokens: def _is_generator_func ( func_impl ) : if ( 3 , 5 ) <= sys . version_info < ( 3 , 6 ) : return isgeneratorfunction ( func_impl ) and not iscoroutinefunction ( func_impl ) else : return isgeneratorfunction ( func_impl )
short_docstring: Return True if the func_impl is a generator
short_docstring_tokens: Return True if the func_impl is a generator
comment: """
      Return True if the func_impl is a generator
      :param func_impl:
      :return:
      """$SEP$# with Python 3.5 isgeneratorfunction returns True for all coroutines$SEP$# however we know that it is NOT possible to have a generator$SEP$# coroutine in python 3.5: PEP525 was not there yet