use std::comm::{PortOne, oneshot, send_one, recv_one};
use std::either::{Either, Left, Right};
use std::io;
-use std::result;
use std::run;
use std::task;
// FIXME(#5121)
fn json_decode<T:Decodable<json::Decoder>>(s: &str) -> T {
do io::with_str_reader(s) |rdr| {
- let j = result::unwrap(json::from_reader(rdr));
+ let j = json::from_reader(rdr).unwrap();
let mut decoder = json::Decoder(j);
Decodable::decode(&mut decoder)
}
~"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);
}
}
+ /// 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<U>(self, op: &fn(T) -> Result<U,E>) -> Result<U,E> {
return Ok(());
}
-/// Unwraps a result, assuming it is an `ok(T)`
-#[inline]
-pub fn unwrap<T, U>(res: Result<T, U>) -> 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<T, U>(res: Result<T, U>) -> U {
- match res {
- Err(u) => u,
- Ok(_) => fail!("unwrap called on an ok result")
- }
-}
#[cfg(test)]
mod tests {