parameters: (future)
return_statement: return info
docstring: helper function for Future.__repr__
docstring_summary: helper function for Future.__repr__
docstring_tokens: helper function for Future . __repr__
function: def _future_repr_info(future):
      # (Future) -> str
      """helper function for Future.__repr__"""
      info = [future._state.lower()]
      if future._state == _FINISHED:
          if future._exception is not None:
              info.append(f'exception={future._exception!r}')
          else:
              # use reprlib to limit the length of the output, especially
              # for very long strings
              result = reprlib.repr(future._result)
              info.append(f'result={result}')
      if future._callbacks:
          info.append(_format_callbacks(future._callbacks))
      if future._source_traceback:
          frame = future._source_traceback[-1]
          info.append(f'created at {frame[0]}:{frame[1]}')
      return info
function_tokens: def _future_repr_info ( future ) : # (Future) -> str info = [ future . _state . lower ( ) ] if future . _state == _FINISHED : if future . _exception is not None : info . append ( f'exception={future._exception!r}' ) else : # use reprlib to limit the length of the output, especially # for very long strings result = reprlib . repr ( future . _result ) info . append ( f'result={result}' ) if future . _callbacks : info . append ( _format_callbacks ( future . _callbacks ) ) if future . _source_traceback : frame = future . _source_traceback [ - 1 ] info . append ( f'created at {frame[0]}:{frame[1]}' ) return info