From 6bdc402597ade997d1ceb69062b11248d32e9a6f Mon Sep 17 00:00:00 2001 From: metamuffin Date: Tue, 25 Mar 2025 15:42:46 +0100 Subject: toplevel list tool --- exporter/src/bin/toplevel.rs | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 exporter/src/bin/toplevel.rs (limited to 'exporter/src/bin') diff --git a/exporter/src/bin/toplevel.rs b/exporter/src/bin/toplevel.rs new file mode 100644 index 0000000..2198469 --- /dev/null +++ b/exporter/src/bin/toplevel.rs @@ -0,0 +1,22 @@ +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(()) +} -- cgit v1.2.3-70-g09d2