{{ preamble }}std::thread::Builder::new()
.stack_size(32 * 1024 * 1024)
.spawn(move || {
let rt = tokio::runtime::Runtime::new().map_err(|e| e.to_string())?;
let result = rt.block_on(async { {{ core_call }}.await });
Ok::<_, String>({{ result_wrap }})
})
.map_err(|e| e.to_string())?
.join()
.map_err(|_| "thread panicked".to_string())?