blob: ba0ef785f126ef35cf8b5a3cf7a4095305848d68 [file]
// Copyright 2026 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//! This file is not generated by bindgen because it doesn't really make sense to use bindgen
//! to generate two function signatures that are unlikely to change.
//!
//! The original definitions are in //sdk/lib/async-default/include/lib/async
use crate::async_dispatcher_t;
unsafe extern "C" {
// SAFETY: This API is safe to call at any time.
/// Gets the currently active async dispatcher for the current thread, if set.
pub safe fn async_get_default_dispatcher() -> *const async_dispatcher_t;
/// Sets the current thread's default asynchronous dispatcher interface.
/// May be set to |NULL| if this thread doesn't have a default dispatcher.
///
/// # Safety
///
/// The caller must ensure that the dispatcher being passed in is currently
/// valid, and that it will remain valid until either the current thread has
/// exited or it has been replaced with another dispatcher (including NULL).
pub unsafe fn async_set_default_dispatcher(dispatcher: *const async_dispatcher_t);
}