Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- struct NmFileReader<F>
- {
- state : State,
- buffer : BufReader<F>
- }
- impl<F> NmFileReader<F>
- {
- fn new(reader : BufReader<F>) -> NmFileReader<F>
- {
- return NmFileReader{ state:State::InitialState, buffer:reader};
- }
- }
- impl<F : BufRead> Iterator for NmFileReader<F>
- {
- type Item = String;
- fn next(&mut self) -> Option<String>
- {
- let mut line = String::new();
- let line_size = self.buffer.read_line(& mut line);
- return match line_size
- {
- Ok(l) => Some(line),
- Error => None
- }
- }
- }
- fn from_reader(reader : BufReader<File>) -> NmFile
- {
- let mut nmReader = NmFileReader::new(reader);
- let lines = nmReader.count();
- return NmFile{p : Vec::new(), r : Vec::new()};
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement