use std::{cmp::Reverse, collections::BTreeMap, env::args, fs::File, io::BufReader}; use unity_tools::assetbundle::AssetBundle; fn main() -> anyhow::Result<()> { env_logger::init_from_env("LOG"); let file = BufReader::new(File::open(args().nth(1).unwrap()).unwrap()); let mut bundle = AssetBundle::open(file, "samples")?; let mut counters = BTreeMap::::new(); for ob in bundle.all_toplevel() { *counters.entry(ob.class).or_default() += 1; } let mut s = counters.into_iter().collect::>(); s.sort_by_key(|s| Reverse(s.1)); for (k, c) in s { println!("{c:6} {k}"); } Ok(()) }