Spec-Zone.ru › Dart 2

dart:ffi

fromFunction<T extends Function> статический метод

Pointer<NativeFunction<T>> fromFunction<T extends Function>(
  1. @DartRepresentationOf('T') Function f,
  2. [Object? exceptionalReturn]
)

Преобразует функцию Dart в указатель на функцию C, автоматически выполняя маршалинг аргументов и возвращаемого значения

Если при вызове f() возникает исключение, нативная функция вернёт exceptionalReturn, которое должно быть совместимо с типом возвращаемого значения f.

Возвращённый адрес функции можно вызывать только в потоке-мутаторе (главном потоке) текущего изолята. При вызове из любого другого потока процесс будет аварийно завершён.

Возвращённый указатель остаётся действительным в течение всего времени жизни текущего изолята. После завершения изолята, в котором он был создан, его вызов из нативного кода приведёт к неопределённому поведению.

Динамические вызовы не поддерживаются — то есть вызовы, в которых тип получателя — dynamic.

Реализация

external static Pointer<NativeFunction<T>> fromFunction<T extends Function>(
    @DartRepresentationOf('T') Function f,
    [Object? exceptionalReturn]);

© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.19.6/dart-ffi/Pointer/fromFunction.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API