1use libesedb::EseDb;
2
3fn main() {
4 let filename = std::env::args()
5 .nth(1)
6 .expect("specify path to .esedb file");
7 let db = EseDb::open(&filename).unwrap();
8 println!("Database Overview ({}):", filename);
9 for table in db.iter_tables().unwrap() {
10 let table = table.unwrap();
11 println!(
12 " {} [{:?}]",
13 table.name().unwrap(),
14 table
15 .iter_columns()
16 .unwrap()
17 .map(|c| c.unwrap().name().unwrap())
18 .collect::<Vec<String>>()
19 .join(", "),
20 );
21 for record in table.iter_records().unwrap() {
22 let record = record.unwrap();
23 for i in 0..record.count_values().unwrap() {
24 println!(
25 " ├ T={:?} L={}, M={} V={:?}",
26 table.column(i).unwrap().variant().unwrap(),
27 record.is_long(i).unwrap(),
28 record.is_multi(i).unwrap(),
29 record.value(i).unwrap(),
30 );
31 }
32 }
33 }
34}