diff options
| author | Tim Chevalier <chevalier@alum.wellesley.edu> | 2012-12-06 19:27:44 -0800 |
|---|---|---|
| committer | Tim Chevalier <chevalier@alum.wellesley.edu> | 2012-12-06 21:53:25 -0800 |
| commit | 7a365e4aa4386ed692163517e3cf42eaed68b786 (patch) | |
| tree | e7e28adf6b885ed274bfb6c187b29d66217c11a7 /src/libstd | |
| parent | 35f36808ffd28fd1195147890f49b6284bb97130 (diff) | |
| download | rust-7a365e4aa4386ed692163517e3cf42eaed68b786.tar.gz rust-7a365e4aa4386ed692163517e3cf42eaed68b786.zip | |
make bblum happy
Diffstat (limited to 'src/libstd')
| -rw-r--r-- | src/libstd/sync.rs | 23 |
1 files changed, 6 insertions, 17 deletions
diff --git a/src/libstd/sync.rs b/src/libstd/sync.rs index 86b9f03313f..a373a201ffe 100644 --- a/src/libstd/sync.rs +++ b/src/libstd/sync.rs @@ -158,36 +158,25 @@ impl &Sem<~[mut Waitqueue]> { // FIXME(#3588) should go inside of access() #[doc(hidden)] -struct SemRelease { - sem: &Sem<()>, -} +type SemRelease = SemReleaseGeneric<()>; +type SemAndSignalRelease = SemReleaseGeneric<~[mut Waitqueue]>; +struct SemReleaseGeneric<Q: Send> { sem: &Sem<Q> } -impl SemRelease : Drop { +impl<Q: Send> SemReleaseGeneric<Q> : Drop { fn finalize(&self) { self.sem.release(); } } fn SemRelease(sem: &r/Sem<()>) -> SemRelease/&r { - SemRelease { + SemReleaseGeneric { sem: sem } } -#[doc(hidden)] -struct SemAndSignalRelease { - sem: &Sem<~[mut Waitqueue]>, -} - -impl SemAndSignalRelease : Drop { - fn finalize(&self) { - self.sem.release(); - } -} - fn SemAndSignalRelease(sem: &r/Sem<~[mut Waitqueue]>) -> SemAndSignalRelease/&r { - SemAndSignalRelease { + SemReleaseGeneric { sem: sem } } |
