call method

Implementation

double call(
  ffi.Pointer<ffi.Void> arg0,
  NSAnimation arg1,
  DartNSAnimationProgress arg2,
) => ref.pointer.ref.invoke
    .cast<
      ffi.NativeFunction<
        ffi.Float Function(
          ffi.Pointer<objc.ObjCBlockImpl> block,
          ffi.Pointer<ffi.Void> arg0,
          ffi.Pointer<objc.ObjCObject> arg1,
          NSAnimationProgress arg2,
        )
      >
    >()
    .asFunction<
      double Function(
        ffi.Pointer<objc.ObjCBlockImpl>,
        ffi.Pointer<ffi.Void>,
        ffi.Pointer<objc.ObjCObject>,
        double,
      )
    >()(ref.pointer, arg0, arg1.ref.pointer, arg2);