rangeOfData method

NSRange rangeOfData(
  1. NSData dataToFind, {
  2. required int options,
  3. required NSRange range,
})

rangeOfData:options:range:

Implementation

NSRange rangeOfData(
  NSData dataToFind, {
  required int options,
  required NSRange range,
}) {
  objc.checkOsVersionInternal(
    'NSData.rangeOfData:options:range:',
    iOS: (false, (4, 0, 0)),
    macOS: (false, (10, 6, 0)),
  );
  final $ptr = pkg_ffi.calloc<NSRange>();
  objc.useMsgSendVariants
      ? _objc_msgSend_1d8s65wStret(
          $ptr,
          object$.ref.pointer,
          _sel_rangeOfData_options_range_,
          dataToFind.ref.pointer,
          options,
          range,
        )
      : $ptr.ref = _objc_msgSend_1d8s65w(
          object$.ref.pointer,
          _sel_rangeOfData_options_range_,
          dataToFind.ref.pointer,
          options,
          range,
        );
  final $finalizable = $ptr.cast<ffi.Uint8>().asTypedList(
    ffi.sizeOf<NSRange>(),
    finalizer: pkg_ffi.calloc.nativeFree,
  );
  return ffi.Struct.create<NSRange>($finalizable);
}