implement static method
NSMetadataQueryDelegate
implement({
- ObjCObjectBase metadataQuery_replacementObjectForResultObject_()?,
- ObjCObjectBase metadataQuery_replacementValueForAttribute_value_(
- NSMetadataQuery,
- NSString,
- ObjCObjectBase
- bool $keepIsolateAlive = true,
Builds an object that implements the NSMetadataQueryDelegate protocol. To implement
multiple protocols, use addToBuilder or objc.ObjCProtocolBuilder directly.
If $keepIsolateAlive is true, this protocol will keep this isolate
alive until it is garbage collected by both Dart and ObjC.
Implementation
static NSMetadataQueryDelegate implement({
objc.ObjCObjectBase Function(NSMetadataQuery, NSMetadataItem)?
metadataQuery_replacementObjectForResultObject_,
objc.ObjCObjectBase Function(
NSMetadataQuery,
objc.NSString,
objc.ObjCObjectBase,
)?
metadataQuery_replacementValueForAttribute_value_,
bool $keepIsolateAlive = true,
}) {
final builder = objc.ObjCProtocolBuilder(
debugName: 'NSMetadataQueryDelegate',
);
NSMetadataQueryDelegate.metadataQuery_replacementObjectForResultObject_
.implement(builder, metadataQuery_replacementObjectForResultObject_);
NSMetadataQueryDelegate.metadataQuery_replacementValueForAttribute_value_
.implement(builder, metadataQuery_replacementValueForAttribute_value_);
builder.addProtocol($protocol);
return NSMetadataQueryDelegate.castFrom(
builder.build(keepIsolateAlive: $keepIsolateAlive),
);
}