code: def next(self):
          'x.next() -> the next value, or raise StopIteration'
          if self.__g_object is None:
              self.__g_object = self.__g_function( *self.__v_args, **self.__d_args )
          try:
              return self.__g_object.next()
          except StopIteration:
              self.__g_object = None
              raisf next(self):
          'x.next() -> the next value, or raise StopIteration'
          if self.__g_object is None:
              self.__g_object = self.__g_function( *self.__v_args, **self.__d_args )
          try:
              return self.__g_object.next()
          except StopIteration:
              self.__g_object = None
              raise
docs: x.next() -> the next value, or raise StopIteration