code: def throw(self, typ, val=None, tb=None):  # pylint:disable=method-hidden,invalid-name
          
          self._materialize()
          self._generator.throw(typ, val, tb)
docs: throw(typ[,val[,tb]]) -> raise exception in generator,
          return next yielded value or raise StopIteration.