Coin de Gamma
4 months ago
2 changed files with 43 additions and 33 deletions
@ -1,13 +1,37 @@
|
||||
use std::collections::HashSet; |
||||
|
||||
use std::fs; |
||||
use std::io::{self, BufRead}; |
||||
|
||||
|
||||
pub struct DB { |
||||
|
||||
pub items: HashSet::<String> |
||||
} |
||||
|
||||
impl DB { |
||||
pub fn from() -> DB { |
||||
return DB::new(); |
||||
pub fn new(path: &str) -> io::Result<DB> { |
||||
let file = fs::File::open(path)?; |
||||
let reader = io::BufReader::new(file); |
||||
let mut items = HashSet::<String>::new(); |
||||
for line in reader.lines() { |
||||
match line { |
||||
Ok(content) => { |
||||
items.insert(content); |
||||
}, |
||||
Err(e) => { |
||||
eprintln!("Error reading line , {}", e); |
||||
} |
||||
} |
||||
} |
||||
} |
||||
let result = DB { |
||||
items: items |
||||
}; |
||||
Ok(result) |
||||
} |
||||
|
||||
//pub fn dump(&self) {
|
||||
// TODO: implement
|
||||
//}
|
||||
} |
||||
|
||||
|
||||
|
Loading…
Reference in new issue