]> git.lizzy.rs Git - rust.git/commit
auto merge of #10660 : alexcrichton/rust/little-scope, r=pcwalton
authorbors <bors@rust-lang.org>
Tue, 26 Nov 2013 10:52:04 +0000 (02:52 -0800)
committerbors <bors@rust-lang.org>
Tue, 26 Nov 2013 10:52:04 +0000 (02:52 -0800)
commit4fe129651167e4ba1a16d6ee93bc0ca38c7cf7fa
tree96637056faae22b8e417b327d8de942ce1c75d65
parent21990cdda624f5eee340311b7f8e542ab8a218e1
parentac59888d8f466522a9802ee7d33134505794ee12
auto merge of #10660 : alexcrichton/rust/little-scope, r=pcwalton

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).