class_docstr: SAX driver for the pyexpat C module.
class_docstr_tok: ["SAX","driver","for","the","pyexpat","C","module","."]
code: def close(self):
      if (
          self._entity_stack
          or self._parser is None
          or isinstance(self._parser, _ClosedParser)
      ):
          # If we are completing an external entity, do nothing here
          return
      try:
          self.feed(b"", isFinal=True)
          self._cont_handler.endDocument()
          self._parsing = False
          # break cycle created by expat handlers pointing to our methods
          self._parser = None
      finally:
          self._parsing = False
          if self._parser is not None:
              # Keep ErrorColumnNumber and ErrorLineNumber after closing.
              parser = _ClosedParser()
              parser.ErrorColumnNumber = self._parser.ErrorColumnNumber
              parser.ErrorLineNumber = self._parser.ErrorLineNumber
              self._parser = parser
          self._close_source()
  
imports: from xml.sax._exceptions import *
  from xml.sax.handler import feature_validation, feature_namespaces
  from xml.sax.handler import feature_namespace_prefixes
  from xml.sax.handler import feature_external_ges, feature_external_pes
  from xml.sax.handler import feature_string_interning
  from xml.sax.handler import property_xml_string, property_interning_dict
  from xml.sax import xmlreader, saxutils, handler
label_desc: Use image node_id 11 for calling the ExpatParser obj's underlying member method code with example usage: obj.close() without return types