call method

ObjCObjectBase? call(
  1. Pointer<Void> arg0,
  2. NSComboBox arg1,
  3. DartNSInteger arg2
)

Implementation

objc.ObjCObjectBase? call(
  ffi.Pointer<ffi.Void> arg0,
  NSComboBox arg1,
  DartNSInteger arg2,
) =>
    ref.pointer.ref.invoke
            .cast<
              ffi.NativeFunction<
                ffi.Pointer<objc.ObjCObject> Function(
                  ffi.Pointer<objc.ObjCBlockImpl> block,
                  ffi.Pointer<ffi.Void> arg0,
                  ffi.Pointer<objc.ObjCObject> arg1,
                  NSInteger arg2,
                )
              >
            >()
            .asFunction<
              ffi.Pointer<objc.ObjCObject> Function(
                ffi.Pointer<objc.ObjCBlockImpl>,
                ffi.Pointer<ffi.Void>,
                ffi.Pointer<objc.ObjCObject>,
                int,
              )
            >()(ref.pointer, arg0, arg1.ref.pointer, arg2)
            .address ==
        0
    ? null
    : objc.ObjCObjectBase(
        ref.pointer.ref.invoke
            .cast<
              ffi.NativeFunction<
                ffi.Pointer<objc.ObjCObject> Function(
                  ffi.Pointer<objc.ObjCBlockImpl> block,
                  ffi.Pointer<ffi.Void> arg0,
                  ffi.Pointer<objc.ObjCObject> arg1,
                  NSInteger arg2,
                )
              >
            >()
            .asFunction<
              ffi.Pointer<objc.ObjCObject> Function(
                ffi.Pointer<objc.ObjCBlockImpl>,
                ffi.Pointer<ffi.Void>,
                ffi.Pointer<objc.ObjCObject>,
                int,
              )
            >()(ref.pointer, arg0, arg1.ref.pointer, arg2),
        retain: true,
        release: true,
      );