@@ -53,14 +53,13 @@ mod worker_local;
5353
5454pub use std:: sync:: atomic:: Ordering ;
5555pub use std:: sync:: atomic:: Ordering :: SeqCst ;
56- use std:: sync:: { Mutex , MutexGuard } ;
5756
5857pub use vec:: { AppendOnlyIndexVec , AppendOnlyVec } ;
5958
6059mod vec;
6160use parking_lot:: lock_api:: RawMutex as _;
6261use parking_lot:: lock_api:: RawRwLock as _;
63- use parking_lot:: { RawMutex , RawRwLock } ;
62+ use parking_lot:: { Mutex , MutexGuard , RawMutex , RawRwLock } ;
6463
6564mod mode {
6665 use super :: Ordering ;
@@ -644,7 +643,7 @@ impl<T> Lock<T> {
644643 }
645644 }
646645
647- #[ inline( never ) ]
646+ #[ inline]
648647 fn lock_raw( & self ) {
649648 if likely( self . single_thread) {
650649 assert!( !self . borrow. replace( true ) ) ;
@@ -660,7 +659,7 @@ impl<T> Lock<T> {
660659 LockGuard { lock: & self , marker: PhantomData }
661660 }
662661
663- #[ inline( never ) ]
662+ #[ inline]
664663 pub ( crate ) fn with_mt_lock<F : FnOnce ( & mut T ) -> R , R >( & self , f: F ) -> R {
665664 unsafe {
666665 self . mutex. lock( ) ;
@@ -683,7 +682,7 @@ impl<T> Lock<T> {
683682 }
684683 }
685684
686- #[ inline( never ) ]
685+ #[ inline]
687686 fn with_mt_borrow<F : FnOnce ( & T ) -> R , R >( & self , f: F ) -> R {
688687 unsafe {
689688 self . mutex. lock( ) ;
@@ -751,7 +750,7 @@ impl<T> DerefMut for LockGuard<'_, T> {
751750 }
752751}
753752
754- #[ inline( never ) ]
753+ #[ inline]
755754fn unlock_mt<T >( guard: & mut LockGuard <' _, T >) {
756755 unsafe { guard. lock. mutex. unlock( ) }
757756}
@@ -842,26 +841,23 @@ impl<T> LockLike<T> for Mutex<T> {
842841
843842 #[ inline]
844843 fn into_inner( self ) -> T {
845- self . into_inner( ) . unwrap ( )
844+ self . into_inner( )
846845 }
847846
848847 #[ inline]
849848 fn get_mut( & mut self ) -> & mut T {
850- self . get_mut( ) . unwrap ( )
849+ self . get_mut( )
851850 }
852851
853852 #[ inline]
854853 fn try_lock( & self ) -> Option <MutexGuard <' _, T >> {
855- self . try_lock( ) . ok ( )
854+ self . try_lock( )
856855 }
857856
858857 #[ inline( always) ]
859858 #[ track_caller]
860859 fn lock( & self ) -> MutexGuard <' _, T > {
861- self . lock( ) . unwrap_or_else( |e| {
862- self . clear_poison( ) ;
863- e. into_inner( )
864- } )
860+ self . lock( )
865861 }
866862}
867863
@@ -1095,7 +1091,7 @@ impl<T> RwLock<T> {
10951091 self . data. get_mut( )
10961092 }
10971093
1098- #[ inline( never ) ]
1094+ #[ inline]
10991095 fn mt_read( & self ) -> ReadGuard <' _, T > {
11001096 self . raw. raw. lock_shared( ) ;
11011097 ReadGuard { rwlock: self , marker: PhantomData }
@@ -1113,7 +1109,7 @@ impl<T> RwLock<T> {
11131109 }
11141110 }
11151111
1116- #[ inline( never ) ]
1112+ #[ inline]
11171113 fn with_mt_read_lock<F : FnOnce ( & T ) -> R , R >( & self , f: F ) -> R {
11181114 self . raw. raw. lock_shared( ) ;
11191115 let r = unsafe { f( & * self . data. get( ) ) } ;
@@ -1157,7 +1153,7 @@ impl<T> RwLock<T> {
11571153 }
11581154 }
11591155
1160- #[ inline( never ) ]
1156+ #[ inline]
11611157 fn mt_write( & self ) -> WriteGuard <' _, T > {
11621158 self . raw. raw. lock_exclusive( ) ;
11631159 WriteGuard { rwlock: self , marker: PhantomData }
@@ -1173,7 +1169,7 @@ impl<T> RwLock<T> {
11731169 }
11741170 }
11751171
1176- #[ inline( never ) ]
1172+ #[ inline]
11771173 pub fn with_mt_write_lock<F : FnOnce ( & mut T ) -> R , R >( & self , f: F ) -> R {
11781174 self . raw. raw. lock_exclusive( ) ;
11791175 unsafe {
0 commit comments