trellis_runner/engine/cancellation.rs
1use tokio_util::sync::CancellationToken;
2
3pub struct CancellationGuard<'a> {
4 pub(super) token: &'a CancellationToken,
5}
6
7impl<'a> CancellationGuard<'a> {
8 pub fn new(token: &'a CancellationToken) -> Self {
9 Self { token }
10 }
11
12 pub fn check(&self) -> bool {
13 self.token.is_cancelled()
14 }
15}