implementAsBlocking static method

NSXMLParserDelegate implementAsBlocking({
  1. void parserDidStartDocument_(
    1. NSXMLParser
    )?,
  2. void parserDidEndDocument_(
    1. NSXMLParser
    )?,
  3. void parser_foundNotationDeclarationWithName_publicID_systemID_(
    1. NSXMLParser,
    2. NSString,
    3. NSString?,
    4. NSString?,
    )?,
  4. void parser_foundUnparsedEntityDeclarationWithName_publicID_systemID_notationName_(
    1. NSXMLParser,
    2. NSString,
    3. NSString?,
    4. NSString?,
    5. NSString?,
    )?,
  5. void parser_foundAttributeDeclarationWithName_forElement_type_defaultValue_(
    1. NSXMLParser,
    2. NSString,
    3. NSString,
    4. NSString?,
    5. NSString?,
    )?,
  6. void parser_foundElementDeclarationWithName_model_(
    1. NSXMLParser,
    2. NSString,
    3. NSString
    )?,
  7. void parser_foundInternalEntityDeclarationWithName_value_(
    1. NSXMLParser,
    2. NSString,
    3. NSString?
    )?,
  8. void parser_foundExternalEntityDeclarationWithName_publicID_systemID_(
    1. NSXMLParser,
    2. NSString,
    3. NSString?,
    4. NSString?,
    )?,
  9. void parser_didStartElement_namespaceURI_qualifiedName_attributes_(
    1. NSXMLParser,
    2. NSString,
    3. NSString?,
    4. NSString?,
    5. NSDictionary,
    )?,
  10. void parser_didEndElement_namespaceURI_qualifiedName_(
    1. NSXMLParser,
    2. NSString,
    3. NSString?,
    4. NSString?,
    )?,
  11. void parser_didStartMappingPrefix_toURI_(
    1. NSXMLParser,
    2. NSString,
    3. NSString
    )?,
  12. void parser_didEndMappingPrefix_(
    1. NSXMLParser,
    2. NSString
    )?,
  13. void parser_foundCharacters_(
    1. NSXMLParser,
    2. NSString
    )?,
  14. void parser_foundIgnorableWhitespace_(
    1. NSXMLParser,
    2. NSString
    )?,
  15. void parser_foundProcessingInstructionWithTarget_data_(
    1. NSXMLParser,
    2. NSString,
    3. NSString?
    )?,
  16. void parser_foundComment_(
    1. NSXMLParser,
    2. NSString
    )?,
  17. void parser_foundCDATA_(
    1. NSXMLParser,
    2. NSData
    )?,
  18. NSData? parser_resolveExternalEntityName_systemID_(
    1. NSXMLParser,
    2. NSString,
    3. NSString?
    )?,
  19. void parser_parseErrorOccurred_(
    1. NSXMLParser,
    2. NSError
    )?,
  20. void parser_validationErrorOccurred_(
    1. NSXMLParser,
    2. NSError
    )?,
  21. bool $keepIsolateAlive = true,
})

Builds an object that implements the NSXMLParserDelegate protocol. To implement multiple protocols, use addToBuilder or objc.ObjCProtocolBuilder directly. All methods that can be implemented as blocking listeners will be.

If $keepIsolateAlive is true, this protocol will keep this isolate alive until it is garbage collected by both Dart and ObjC.

Implementation

static NSXMLParserDelegate implementAsBlocking({
  void Function(NSXMLParser)? parserDidStartDocument_,
  void Function(NSXMLParser)? parserDidEndDocument_,
  void Function(NSXMLParser, objc.NSString, objc.NSString?, objc.NSString?)?
  parser_foundNotationDeclarationWithName_publicID_systemID_,
  void Function(
    NSXMLParser,
    objc.NSString,
    objc.NSString?,
    objc.NSString?,
    objc.NSString?,
  )?
  parser_foundUnparsedEntityDeclarationWithName_publicID_systemID_notationName_,
  void Function(
    NSXMLParser,
    objc.NSString,
    objc.NSString,
    objc.NSString?,
    objc.NSString?,
  )?
  parser_foundAttributeDeclarationWithName_forElement_type_defaultValue_,
  void Function(NSXMLParser, objc.NSString, objc.NSString)?
  parser_foundElementDeclarationWithName_model_,
  void Function(NSXMLParser, objc.NSString, objc.NSString?)?
  parser_foundInternalEntityDeclarationWithName_value_,
  void Function(NSXMLParser, objc.NSString, objc.NSString?, objc.NSString?)?
  parser_foundExternalEntityDeclarationWithName_publicID_systemID_,
  void Function(
    NSXMLParser,
    objc.NSString,
    objc.NSString?,
    objc.NSString?,
    objc.NSDictionary,
  )?
  parser_didStartElement_namespaceURI_qualifiedName_attributes_,
  void Function(NSXMLParser, objc.NSString, objc.NSString?, objc.NSString?)?
  parser_didEndElement_namespaceURI_qualifiedName_,
  void Function(NSXMLParser, objc.NSString, objc.NSString)?
  parser_didStartMappingPrefix_toURI_,
  void Function(NSXMLParser, objc.NSString)? parser_didEndMappingPrefix_,
  void Function(NSXMLParser, objc.NSString)? parser_foundCharacters_,
  void Function(NSXMLParser, objc.NSString)? parser_foundIgnorableWhitespace_,
  void Function(NSXMLParser, objc.NSString, objc.NSString?)?
  parser_foundProcessingInstructionWithTarget_data_,
  void Function(NSXMLParser, objc.NSString)? parser_foundComment_,
  void Function(NSXMLParser, objc.NSData)? parser_foundCDATA_,
  objc.NSData? Function(NSXMLParser, objc.NSString, objc.NSString?)?
  parser_resolveExternalEntityName_systemID_,
  void Function(NSXMLParser, objc.NSError)? parser_parseErrorOccurred_,
  void Function(NSXMLParser, objc.NSError)? parser_validationErrorOccurred_,
  bool $keepIsolateAlive = true,
}) {
  final builder = objc.ObjCProtocolBuilder(debugName: 'NSXMLParserDelegate');
  NSXMLParserDelegate.parserDidStartDocument_.implementAsBlocking(
    builder,
    parserDidStartDocument_,
  );
  NSXMLParserDelegate.parserDidEndDocument_.implementAsBlocking(
    builder,
    parserDidEndDocument_,
  );
  NSXMLParserDelegate
      .parser_foundNotationDeclarationWithName_publicID_systemID_
      .implementAsBlocking(
        builder,
        parser_foundNotationDeclarationWithName_publicID_systemID_,
      );
  NSXMLParserDelegate
      .parser_foundUnparsedEntityDeclarationWithName_publicID_systemID_notationName_
      .implementAsBlocking(
        builder,
        parser_foundUnparsedEntityDeclarationWithName_publicID_systemID_notationName_,
      );
  NSXMLParserDelegate
      .parser_foundAttributeDeclarationWithName_forElement_type_defaultValue_
      .implementAsBlocking(
        builder,
        parser_foundAttributeDeclarationWithName_forElement_type_defaultValue_,
      );
  NSXMLParserDelegate.parser_foundElementDeclarationWithName_model_
      .implementAsBlocking(
        builder,
        parser_foundElementDeclarationWithName_model_,
      );
  NSXMLParserDelegate.parser_foundInternalEntityDeclarationWithName_value_
      .implementAsBlocking(
        builder,
        parser_foundInternalEntityDeclarationWithName_value_,
      );
  NSXMLParserDelegate
      .parser_foundExternalEntityDeclarationWithName_publicID_systemID_
      .implementAsBlocking(
        builder,
        parser_foundExternalEntityDeclarationWithName_publicID_systemID_,
      );
  NSXMLParserDelegate
      .parser_didStartElement_namespaceURI_qualifiedName_attributes_
      .implementAsBlocking(
        builder,
        parser_didStartElement_namespaceURI_qualifiedName_attributes_,
      );
  NSXMLParserDelegate.parser_didEndElement_namespaceURI_qualifiedName_
      .implementAsBlocking(
        builder,
        parser_didEndElement_namespaceURI_qualifiedName_,
      );
  NSXMLParserDelegate.parser_didStartMappingPrefix_toURI_.implementAsBlocking(
    builder,
    parser_didStartMappingPrefix_toURI_,
  );
  NSXMLParserDelegate.parser_didEndMappingPrefix_.implementAsBlocking(
    builder,
    parser_didEndMappingPrefix_,
  );
  NSXMLParserDelegate.parser_foundCharacters_.implementAsBlocking(
    builder,
    parser_foundCharacters_,
  );
  NSXMLParserDelegate.parser_foundIgnorableWhitespace_.implementAsBlocking(
    builder,
    parser_foundIgnorableWhitespace_,
  );
  NSXMLParserDelegate.parser_foundProcessingInstructionWithTarget_data_
      .implementAsBlocking(
        builder,
        parser_foundProcessingInstructionWithTarget_data_,
      );
  NSXMLParserDelegate.parser_foundComment_.implementAsBlocking(
    builder,
    parser_foundComment_,
  );
  NSXMLParserDelegate.parser_foundCDATA_.implementAsBlocking(
    builder,
    parser_foundCDATA_,
  );
  NSXMLParserDelegate.parser_resolveExternalEntityName_systemID_.implement(
    builder,
    parser_resolveExternalEntityName_systemID_,
  );
  NSXMLParserDelegate.parser_parseErrorOccurred_.implementAsBlocking(
    builder,
    parser_parseErrorOccurred_,
  );
  NSXMLParserDelegate.parser_validationErrorOccurred_.implementAsBlocking(
    builder,
    parser_validationErrorOccurred_,
  );
  builder.addProtocol($protocol);
  return NSXMLParserDelegate.castFrom(
    builder.build(keepIsolateAlive: $keepIsolateAlive),
  );
}