From 43d43adf6bd2024b1ddc0e596d4bed88e1df82b1 Mon Sep 17 00:00:00 2001 From: Ben Striegel Date: Wed, 27 Feb 2013 19:13:53 -0500 Subject: Turn old `drop` blocks into `Drop` traits --- src/libcore/task/spawn.rs | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'src/libcore/task') diff --git a/src/libcore/task/spawn.rs b/src/libcore/task/spawn.rs index 5110f70ff11..bf7209f9fc3 100644 --- a/src/libcore/task/spawn.rs +++ b/src/libcore/task/spawn.rs @@ -308,8 +308,11 @@ struct TCB { mut ancestors: AncestorList, is_main: bool, notifier: Option, +} + +impl Drop for TCB { // Runs on task exit. - drop { + fn finalize(&self) { unsafe { // If we are failing, the whole taskgroup needs to die. if rt::rust_task_is_unwinding(self.me) { @@ -353,7 +356,10 @@ fn TCB(me: *rust_task, tasks: TaskGroupArc, ancestors: AncestorList, struct AutoNotify { notify_chan: Chan, mut failed: bool, - drop { +} + +impl Drop for AutoNotify { + fn finalize(&self) { let result = if self.failed { Failure } else { Success }; self.notify_chan.send(result); } -- cgit 1.4.1-3-g733a5