From c6885ae2312a1be589e945129bdd9d268f14c370 Mon Sep 17 00:00:00 2001 From: 魏曹先生 <1992414357@qq.com> Date: Sun, 21 Jun 2026 22:45:28 +0800 Subject: feat: replace `--pinyin` flag with generic `--post="+pinyin"` option --- src/post_proc.rs | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 src/post_proc.rs (limited to 'src/post_proc.rs') diff --git a/src/post_proc.rs b/src/post_proc.rs new file mode 100644 index 0000000..d8dfa74 --- /dev/null +++ b/src/post_proc.rs @@ -0,0 +1,25 @@ +mod r#trait; +pub use r#trait::*; + +pub mod pinyin; + +/// Look up a processor by name and run it. +pub fn run(text: &str, name: &str, args: &[&str]) -> Option { + macro_rules! match_processor { + ($($processor:ty),+ $(,)?) => { + match name { + $( + n if n == <$processor as TextPostProcesser>::processer_name() => { + Some(<$processor as TextPostProcesser>::process(args, text)) + } + )+ + _ => None, + } + }; + } + + match_processor!( + // +pinyin + crate::post_proc::pinyin::PinyinPostProcesser, + ) +} -- cgit