From e308167a2fe558924fcebcc99358c057ae0b90b4 Mon Sep 17 00:00:00 2001 From: Erick Tryzelaar Date: Fri, 26 Jul 2013 18:03:57 -0700 Subject: cleanup .unwrap and .unwrap_err fixing io tests --- src/libstd/io.rs | 6 ++---- src/libstd/result.rs | 33 ++++++++++++++------------------- 2 files changed, 16 insertions(+), 23 deletions(-) (limited to 'src/libstd') diff --git a/src/libstd/io.rs b/src/libstd/io.rs index 05a5184ccba..fcc53c33a5d 100644 --- a/src/libstd/io.rs +++ b/src/libstd/io.rs @@ -1851,12 +1851,10 @@ mod tests { ~"A hoopy frood who really knows where his towel is."; debug!(frood.clone()); { - let out: @io::Writer = - result::unwrap( - io::file_writer(tmpfile, [io::Create, io::Truncate])); + let out: @io::Writer = io::file_writer(tmpfile, [io::Create, io::Truncate]).unwrap(); out.write_str(frood); } - let inp: @io::Reader = result::unwrap(io::file_reader(tmpfile)); + let inp: @io::Reader = io::file_reader(tmpfile).unwrap(); let frood2: ~str = inp.read_c_str(); debug!(frood2.clone()); assert_eq!(frood, frood2); diff --git a/src/libstd/result.rs b/src/libstd/result.rs index 809244af12a..ec2715fcf2e 100644 --- a/src/libstd/result.rs +++ b/src/libstd/result.rs @@ -242,11 +242,23 @@ impl Result { } } + /// Unwraps a result, assuming it is an `ok(T)` #[inline] - pub fn unwrap(self) -> T { unwrap(self) } + pub fn unwrap(self) -> T { + match self { + Ok(t) => t, + Err(_) => fail!("unwrap called on an err result") + } + } + /// Unwraps a result, assuming it is an `err(U)` #[inline] - pub fn unwrap_err(self) -> E { unwrap_err(self) } + pub fn unwrap_err(self) -> E { + match self { + Err(u) => u, + Ok(_) => fail!("unwrap called on an ok result") + } + } #[inline] pub fn chain(self, op: &fn(T) -> Result) -> Result { @@ -375,23 +387,6 @@ pub fn iter_vec2(ss: &[S], ts: &[T], return Ok(()); } -/// Unwraps a result, assuming it is an `ok(T)` -#[inline] -pub fn unwrap(res: Result) -> T { - match res { - Ok(t) => t, - Err(_) => fail!("unwrap called on an err result") - } -} - -/// Unwraps a result, assuming it is an `err(U)` -#[inline] -pub fn unwrap_err(res: Result) -> U { - match res { - Err(u) => u, - Ok(_) => fail!("unwrap called on an ok result") - } -} #[cfg(test)] mod tests { -- cgit 1.4.1-3-g733a5