]> git.lizzy.rs Git - rust.git/commit
Move LittleLock to using RAII
authorAlex Crichton <alex@alexcrichton.com>
Tue, 26 Nov 2013 01:55:41 +0000 (17:55 -0800)
committerAlex Crichton <alex@alexcrichton.com>
Tue, 26 Nov 2013 01:55:41 +0000 (17:55 -0800)
commitac59888d8f466522a9802ee7d33134505794ee12
treef3577feb56ac8aec687895d58fdd6938848aae33
parent679a2c042fb2541f55f1192ca97672907b258337
Move LittleLock to using RAII

This moves the locking/waiting methods to returning an RAII struct instead of
relying on closures. Additionally, this changes the methods to all take
'&mut self' to discourage recursive locking. The new method to block is to call
`wait` on the returned RAII structure instead of calling it on the lock itself
(this enforces that the lock is held).

At the same time, this improves the Mutex interface a bit by allowing
destruction of non-initialized members and by allowing construction of an empty
mutex (nothing initialized inside).
src/libstd/unstable/mutex.rs
src/libstd/unstable/sync.rs