Skip to main content

qubit_lock/monitor/
async_monitor.rs

1/*******************************************************************************
2 *
3 *    Copyright (c) 2025 - 2026 Haixing Hu.
4 *
5 *    SPDX-License-Identifier: Apache-2.0
6 *
7 *    Licensed under the Apache License, Version 2.0.
8 *
9 ******************************************************************************/
10//! Aggregate asynchronous monitor capability.
11
12use crate::monitor::{
13    AsyncNotificationWaiter,
14    AsyncTimeoutConditionWaiter,
15    AsyncTimeoutNotificationWaiter,
16    Notifier,
17};
18
19/// Aggregate trait for asynchronous monitor-style synchronization.
20pub trait AsyncMonitor:
21    Notifier + AsyncNotificationWaiter + AsyncTimeoutNotificationWaiter + AsyncTimeoutConditionWaiter
22{
23}
24
25impl<T> AsyncMonitor for T where
26    T: Notifier
27        + AsyncNotificationWaiter
28        + AsyncTimeoutNotificationWaiter
29        + AsyncTimeoutConditionWaiter
30{
31}