@@ -47,15 +47,15 @@ An example program that does this task reads like this:
4747# #[allow(unused_imports)];
4848use std::io::{BufferedReader, File};
4949# mod BufferedReader {
50- # use std::io::File;
50+ # use std::io::{ File, IoResult} ;
5151# use std::io::MemReader;
5252# use std::io::BufferedReader;
5353# static s : &'static [u8] = bytes!("1 2\n\
5454# 34 56\n\
5555# 789 123\n\
5656# 45 67\n\
5757# ");
58- # pub fn new(_inner: Option <File>) -> BufferedReader<MemReader> {
58+ # pub fn new(_inner: IoResult <File>) -> BufferedReader<MemReader> {
5959# BufferedReader::new(MemReader::new(s.to_owned()))
6060# }
6161# }
@@ -71,7 +71,6 @@ fn read_int_pairs() -> ~[(int,int)] {
7171 let mut pairs = ~[];
7272
7373 // Path takes a generic by-value, rather than by reference
74- # let _g = std::io::ignore_io_error();
7574 let path = Path::new(&"foo.txt");
7675 let mut reader = BufferedReader::new(File::open(&path));
7776
@@ -245,15 +244,15 @@ and trapping its exit status using `task::try`:
245244use std::io::{BufferedReader, File};
246245use std::task;
247246# mod BufferedReader {
248- # use std::io::File;
247+ # use std::io::{ File, IoResult} ;
249248# use std::io::MemReader;
250249# use std::io::BufferedReader;
251250# static s : &'static [u8] = bytes!("1 2\n\
252251# 34 56\n\
253252# 789 123\n\
254253# 45 67\n\
255254# ");
256- # pub fn new(_inner: Option <File>) -> BufferedReader<MemReader> {
255+ # pub fn new(_inner: IoResult <File>) -> BufferedReader<MemReader> {
257256# BufferedReader::new(MemReader::new(s.to_owned()))
258257# }
259258# }
@@ -277,7 +276,6 @@ fn main() {
277276
278277fn read_int_pairs() -> ~[(int,int)] {
279278 let mut pairs = ~[];
280- # let _g = std::io::ignore_io_error();
281279 let path = Path::new(&"foo.txt");
282280
283281 let mut reader = BufferedReader::new(File::open(&path));
@@ -347,15 +345,15 @@ but similarly clear as the version that used `fail!` in the logic where the erro
347345# #[allow(unused_imports)];
348346use std::io::{BufferedReader, File};
349347# mod BufferedReader {
350- # use std::io::File;
348+ # use std::io::{ File, IoResult} ;
351349# use std::io::MemReader;
352350# use std::io::BufferedReader;
353351# static s : &'static [u8] = bytes!("1 2\n\
354352# 34 56\n\
355353# 789 123\n\
356354# 45 67\n\
357355# ");
358- # pub fn new(_inner: Option <File>) -> BufferedReader<MemReader> {
356+ # pub fn new(_inner: IoResult <File>) -> BufferedReader<MemReader> {
359357# BufferedReader::new(MemReader::new(s.to_owned()))
360358# }
361359# }
@@ -374,7 +372,6 @@ fn main() {
374372
375373fn read_int_pairs() -> ~[(int,int)] {
376374 let mut pairs = ~[];
377- # let _g = std::io::ignore_io_error();
378375 let path = Path::new(&"foo.txt");
379376
380377 let mut reader = BufferedReader::new(File::open(&path));
@@ -415,15 +412,15 @@ and replaces bad input lines with the pair `(-1,-1)`:
415412# #[allow(unused_imports)];
416413use std::io::{BufferedReader, File};
417414# mod BufferedReader {
418- # use std::io::File;
415+ # use std::io::{ File, IoResult} ;
419416# use std::io::MemReader;
420417# use std::io::BufferedReader;
421418# static s : &'static [u8] = bytes!("1 2\n\
422419# 34 56\n\
423420# 789 123\n\
424421# 45 67\n\
425422# ");
426- # pub fn new(_inner: Option <File>) -> BufferedReader<MemReader> {
423+ # pub fn new(_inner: IoResult <File>) -> BufferedReader<MemReader> {
427424# BufferedReader::new(MemReader::new(s.to_owned()))
428425# }
429426# }
@@ -447,7 +444,6 @@ fn main() {
447444
448445fn read_int_pairs() -> ~[(int,int)] {
449446 let mut pairs = ~[];
450- # let _g = std::io::ignore_io_error();
451447 let path = Path::new(&"foo.txt");
452448
453449 let mut reader = BufferedReader::new(File::open(&path));
@@ -489,15 +485,15 @@ Changing the condition's return type from `(int,int)` to `Option<(int,int)>` wil
489485# #[allow(unused_imports)];
490486use std::io::{BufferedReader, File};
491487# mod BufferedReader {
492- # use std::io::File;
488+ # use std::io::{IoResult, File} ;
493489# use std::io::MemReader;
494490# use std::io::BufferedReader;
495491# static s : &'static [u8] = bytes!("1 2\n\
496492# 34 56\n\
497493# 789 123\n\
498494# 45 67\n\
499495# ");
500- # pub fn new(_inner: Option <File>) -> BufferedReader<MemReader> {
496+ # pub fn new(_inner: IoResult <File>) -> BufferedReader<MemReader> {
501497# BufferedReader::new(MemReader::new(s.to_owned()))
502498# }
503499# }
@@ -522,7 +518,6 @@ fn main() {
522518
523519fn read_int_pairs() -> ~[(int,int)] {
524520 let mut pairs = ~[];
525- # let _g = std::io::ignore_io_error();
526521 let path = Path::new(&"foo.txt");
527522
528523 let mut reader = BufferedReader::new(File::open(&path));
@@ -573,15 +568,15 @@ This can be encoded in the handler API by introducing a helper type: `enum Malfo
573568# #[allow(unused_imports)];
574569use std::io::{BufferedReader, File};
575570# mod BufferedReader {
576- # use std::io::File;
571+ # use std::io::{ File, IoResult} ;
577572# use std::io::MemReader;
578573# use std::io::BufferedReader;
579574# static s : &'static [u8] = bytes!("1 2\n\
580575# 34 56\n\
581576# 789 123\n\
582577# 45 67\n\
583578# ");
584- # pub fn new(_inner: Option <File>) -> BufferedReader<MemReader> {
579+ # pub fn new(_inner: IoResult <File>) -> BufferedReader<MemReader> {
585580# BufferedReader::new(MemReader::new(s.to_owned()))
586581# }
587582# }
@@ -615,7 +610,6 @@ fn main() {
615610
616611fn read_int_pairs() -> ~[(int,int)] {
617612 let mut pairs = ~[];
618- # let _g = std::io::ignore_io_error();
619613 let path = Path::new(&"foo.txt");
620614
621615 let mut reader = BufferedReader::new(File::open(&path));
@@ -696,15 +690,15 @@ a second condition and a helper function will suffice:
696690# #[allow(unused_imports)];
697691use std::io::{BufferedReader, File};
698692# mod BufferedReader {
699- # use std::io::File;
693+ # use std::io::{ File, IoResult} ;
700694# use std::io::MemReader;
701695# use std::io::BufferedReader;
702696# static s : &'static [u8] = bytes!("1 2\n\
703697# 34 56\n\
704698# 789 123\n\
705699# 45 67\n\
706700# ");
707- # pub fn new(_inner: Option <File>) -> BufferedReader<MemReader> {
701+ # pub fn new(_inner: IoResult <File>) -> BufferedReader<MemReader> {
708702# BufferedReader::new(MemReader::new(s.to_owned()))
709703# }
710704# }
@@ -752,7 +746,6 @@ fn parse_int(x: &str) -> int {
752746
753747fn read_int_pairs() -> ~[(int,int)] {
754748 let mut pairs = ~[];
755- # let _g = std::io::ignore_io_error();
756749 let path = Path::new(&"foo.txt");
757750
758751 let mut reader = BufferedReader::new(File::open(&path));
0 commit comments