From 0f84a88d0b2c9205ec1b3cbfa18ffe05478e5a64 Mon Sep 17 00:00:00 2001 From: 魏曹先生 <1992414357@qq.com> Date: Sun, 28 Jun 2026 06:21:56 +0800 Subject: feat(mingling_pathf): add pattern analyzer module for struct detection Add a `PatternAnalyzer` with an `AnalyzePattern` trait to detect and extract struct declarations from Rust source files, supporting nested inline modules. --- mingling_pathf/test/src/lib.rs | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'mingling_pathf/test/src') diff --git a/mingling_pathf/test/src/lib.rs b/mingling_pathf/test/src/lib.rs index 742e9d0..dbbd76d 100644 --- a/mingling_pathf/test/src/lib.rs +++ b/mingling_pathf/test/src/lib.rs @@ -37,3 +37,14 @@ fn test_module_pathf() { assert_eq!(mapping.get("src/use_all.rs").unwrap(), "crate"); assert_eq!(mapping.get("src/main.rs").unwrap(), "crate"); } + +#[test] +fn test_pattern_analyzer() { + let dir = current_dir().unwrap().join("test_proj"); + let mut analyzer = mingling_pathf::pattern_analyzer::init(); + analyzer.add_pattern(mingling_pathf::patterns::BasicStructPattern); + + let result = analyzer.analyze_file(dir.join("src/has_sub_mod.rs")).unwrap(); + + assert!(result.contains("::directly_sub_mod::DirectlySubModStruct")); +} -- cgit