executeSync<S, E extends Object> method
- SyncTask<
S, E> task
Similar to executeNormal, except that this will return synchronously
Implementation
S executeSync<S, E extends Object>(SyncTask<S, E> task) {
final WireSyncRust2Dart syncReturn;
try {
syncReturn = task.callFfi();
} catch (err, st) {
throw PanicException('EXECUTE_SYNC_ABORT $err $st');
}
try {
final syncReturnAsDartObject = wireSyncReturnIntoDart(syncReturn);
return _transformRust2DartMessage(syncReturnAsDartObject, task.parseSuccessData, task.parseErrorData);
} finally {
inner.free_WireSyncRust2Dart(syncReturn);
}
}