@@ -232,6 +232,19 @@ pub type RwSpinlockUpgradableReadGuard<'a, T> =
232
232
/// A [`lock_api::RwLockWriteGuard`] based on [`RawRwSpinlock`].
233
233
pub type RwSpinlockWriteGuard < ' a , T > = lock_api:: RwLockWriteGuard < ' a , RawRwSpinlock < Spin > , T > ;
234
234
235
+ /// A [`lock_api::ArcRwLockReadGuard`] based on [`RawRwSpinlock`].
236
+ #[ cfg( feature = "arc_lock" ) ]
237
+ pub type ArcRwSpinlockReadGuard < T > = lock_api:: ArcRwLockReadGuard < RawRwSpinlock < Spin > , T > ;
238
+
239
+ /// A [`lock_api::ArcRwLockUpgradableReadGuard`] based on [`RawRwSpinlock`].
240
+ #[ cfg( feature = "arc_lock" ) ]
241
+ pub type ArcRwSpinlockUpgradableReadGuard < T > =
242
+ lock_api:: ArcRwLockUpgradableReadGuard < RawRwSpinlock < Spin > , T > ;
243
+
244
+ /// A [`lock_api::ArcRwLockWriteGuard`] based on [`RawRwSpinlock`].
245
+ #[ cfg( feature = "arc_lock" ) ]
246
+ pub type ArcRwSpinlockWriteGuard < T > = lock_api:: ArcRwLockWriteGuard < RawRwSpinlock < Spin > , T > ;
247
+
235
248
/// A [`lock_api::RwLock`] based on [`RawRwSpinlock`]`<`[`Backoff`]`>`.
236
249
pub type BackoffRwSpinlock < T > = lock_api:: RwLock < RawRwSpinlock < Backoff > , T > ;
237
250
@@ -247,6 +260,20 @@ pub type BackoffRwSpinlockUpgradableReadGuard<'a, T> =
247
260
pub type BackoffRwSpinlockWriteGuard < ' a , T > =
248
261
lock_api:: RwLockWriteGuard < ' a , RawRwSpinlock < Backoff > , T > ;
249
262
263
+ /// A [`lock_api::ArcRwLockReadGuard`] based on [`RawRwSpinlock`]`<`[`Backoff`]`>`.
264
+ #[ cfg( feature = "arc_lock" ) ]
265
+ pub type ArcBackoffRwSpinlockReadGuard < T > = lock_api:: ArcRwLockReadGuard < RawRwSpinlock < Backoff > , T > ;
266
+
267
+ /// A [`lock_api::ArcRwLockUpgradableReadGuard`] based on [`RawRwSpinlock`]`<`[`Backoff`]`>`.
268
+ #[ cfg( feature = "arc_lock" ) ]
269
+ pub type ArcBackoffRwSpinlockUpgradableReadGuard < T > =
270
+ lock_api:: ArcRwLockUpgradableReadGuard < RawRwSpinlock < Backoff > , T > ;
271
+
272
+ /// A [`lock_api::ArcRwLockWriteGuard`] based on [`RawRwSpinlock`]`<`[`Backoff`]`>`.
273
+ #[ cfg( feature = "arc_lock" ) ]
274
+ pub type ArcBackoffRwSpinlockWriteGuard < T > =
275
+ lock_api:: ArcRwLockWriteGuard < RawRwSpinlock < Backoff > , T > ;
276
+
250
277
// Adapted from `spin::rwlock`.
251
278
#[ cfg( test) ]
252
279
mod tests {
0 commit comments