class_docstr: Representing an Iterator that is also auto closeable.
class_docstr_tok: ["Representing","an","Iterator","that","is","also","auto","closeable","."]
code: def __next__(self):
      if not self._j_closeable_iterator.hasNext():
          raise StopIteration("No more data.")
      gateway = get_gateway()
      pickle_bytes = (
          gateway.jvm.PythonBridgeUtils.getPickledBytesFromRow(
              self._j_closeable_iterator.next(),
              self._j_field_data_types,
          )
      )
      row_kind = RowKind(
          int.from_bytes(pickle_bytes[0], byteorder="big", signed=False)
      )
      pickle_bytes = list(pickle_bytes[1:])
      field_data = zip(pickle_bytes, self._data_types)
      fields = []
      for data, field_type in field_data:
          if len(data) == 0:
              fields.append(None)
          else:
              fields.append(
                  pickled_bytes_to_python_converter(data, field_type)
              )
      result_row = Row(*fields)
      result_row.set_row_kind(row_kind)
      return result_row
  
imports: from typing import Optional
  from py4j.java_gateway import get_method
  from pyflink.common.types import RowKind
  from pyflink.common import Row
  from pyflink.common.job_client import JobClient
  from pyflink.java_gateway import get_gateway
  from pyflink.table.result_kind import ResultKind
  from pyflink.table.table_schema import TableSchema
  from pyflink.table.types import _from_java_data_type
  from pyflink.table.utils import pickled_bytes_to_python_converter
label_desc: Use image node_id 3 for calling the CloseableIterator obj's underlying member method code with example usage: obj.__next__() and returns: result_row