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 struct DB { |
||||||
|
pub items: HashSet::<String> |
||||||
} |
} |
||||||
|
|
||||||
impl DB { |
impl DB { |
||||||
pub fn from() -> DB { |
pub fn new(path: &str) -> io::Result<DB> { |
||||||
return DB::new(); |
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