implement static method

NSDatePickerCellDelegate implement({
  1. void datePickerCell_validateProposedDateValue_timeInterval_(
    1. NSDatePickerCell,
    2. Pointer<Pointer<ObjCObject>>,
    3. Pointer<CGFloat>
    )?,
  2. bool $keepIsolateAlive = true,
})

Builds an object that implements the NSDatePickerCellDelegate 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 NSDatePickerCellDelegate implement({
  void Function(
    NSDatePickerCell,
    ffi.Pointer<ffi.Pointer<objc.ObjCObject>>,
    ffi.Pointer<NSTimeInterval>,
  )?
  datePickerCell_validateProposedDateValue_timeInterval_,
  bool $keepIsolateAlive = true,
}) {
  final builder = objc.ObjCProtocolBuilder(
    debugName: 'NSDatePickerCellDelegate',
  );
  NSDatePickerCellDelegate
      .datePickerCell_validateProposedDateValue_timeInterval_
      .implement(
        builder,
        datePickerCell_validateProposedDateValue_timeInterval_,
      );
  builder.addProtocol($protocol);
  return NSDatePickerCellDelegate.castFrom(
    builder.build(keepIsolateAlive: $keepIsolateAlive),
  );
}