From e489eaa0c5fb4a9d8b716dc3fc63aa653c22f4ec Mon Sep 17 00:00:00 2001 From: Andrew Hobden Date: Sun, 29 Mar 2015 10:03:49 -0700 Subject: [PATCH 1/3] Update `std::error` example To not use `old_io` and `os`, which are deprecated. Since there is no more `MemoryMap` used byte parsing instead to generate the second potential error. --- src/libcore/error.rs | 38 ++++++++++++++++---------------------- 1 file changed, 16 insertions(+), 22 deletions(-) diff --git a/src/libcore/error.rs b/src/libcore/error.rs index 51f3369a75bd3..5e6acb2142c78 100644 --- a/src/libcore/error.rs +++ b/src/libcore/error.rs @@ -48,33 +48,27 @@ //! For example, //! //! ``` -//! # #![feature(os, old_io, old_path)] +//! #![feature(core)] //! use std::error::FromError; -//! use std::old_io::{File, IoError}; -//! use std::os::{MemoryMap, MapError}; -//! use std::old_path::Path; -//! -//! enum MyError { -//! Io(IoError), -//! Map(MapError) +//! use std::{io, str}; +//! use std::fs::File; +//! +//! enum MyError { Io(io::Error), Utf8(str::Utf8Error), } +//! +//! impl FromError for MyError { +//! fn from_error(err: io::Error) -> MyError { MyError::Io(err) } //! } -//! -//! impl FromError for MyError { -//! fn from_error(err: IoError) -> MyError { -//! MyError::Io(err) -//! } +//! +//! impl FromError for MyError { +//! fn from_error(err: str::Utf8Error) -> MyError { MyError::Utf8(err) } //! } -//! -//! impl FromError for MyError { -//! fn from_error(err: MapError) -> MyError { -//! MyError::Map(err) -//! } -//! } -//! +//! //! #[allow(unused_variables)] //! fn open_and_map() -> Result<(), MyError> { -//! let f = try!(File::open(&Path::new("foo.txt"))); -//! let m = try!(MemoryMap::new(0, &[])); +//! let b = b"foo.txt"; +//! let s = try!(str::from_utf8(b)); +//! let f = try!(File::open(s)); +//! //! // do something interesting here... //! Ok(()) //! } From 1a5e73a82d6a3e27804ac2f37d1f7dca62ecfc02 Mon Sep 17 00:00:00 2001 From: Andrew Hobden Date: Sun, 29 Mar 2015 11:06:38 -0700 Subject: [PATCH 2/3] Fix trailing whitespace. Whoops! --- src/libcore/error.rs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/libcore/error.rs b/src/libcore/error.rs index 5e6acb2142c78..9b78f5a5c616c 100644 --- a/src/libcore/error.rs +++ b/src/libcore/error.rs @@ -52,23 +52,23 @@ //! use std::error::FromError; //! use std::{io, str}; //! use std::fs::File; -//! +//! //! enum MyError { Io(io::Error), Utf8(str::Utf8Error), } -//! +//! //! impl FromError for MyError { //! fn from_error(err: io::Error) -> MyError { MyError::Io(err) } //! } -//! +//! //! impl FromError for MyError { //! fn from_error(err: str::Utf8Error) -> MyError { MyError::Utf8(err) } //! } -//! +//! //! #[allow(unused_variables)] //! fn open_and_map() -> Result<(), MyError> { //! let b = b"foo.txt"; //! let s = try!(str::from_utf8(b)); //! let f = try!(File::open(s)); -//! +//! //! // do something interesting here... //! Ok(()) //! } From d4b5f65afcf20befc554dabf2f8735e5d173b382 Mon Sep 17 00:00:00 2001 From: Andrew Hobden Date: Sun, 29 Mar 2015 15:25:06 -0700 Subject: [PATCH 3/3] Fix line spacing. --- src/libcore/error.rs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/libcore/error.rs b/src/libcore/error.rs index 9b78f5a5c616c..9430aa0066871 100644 --- a/src/libcore/error.rs +++ b/src/libcore/error.rs @@ -53,7 +53,10 @@ //! use std::{io, str}; //! use std::fs::File; //! -//! enum MyError { Io(io::Error), Utf8(str::Utf8Error), } +//! enum MyError { +//! Io(io::Error), +//! Utf8(str::Utf8Error), +//! } //! //! impl FromError for MyError { //! fn from_error(err: io::Error) -> MyError { MyError::Io(err) }