code: def future_raise(self, tp, value=None, tb=None):
          
          if value is not None and isinstance(tp, Exception):
              raise TypeError("instance exception may not have a separate value")
          if value is not None:
              exc = tp(value)
          else:
              exc = tp
          if exc.__traceback__ is not tb:
              raise exc.with_traceback(tb)
          raise exc
docs: raise_ implementation from future.utils