summaryrefslogtreecommitdiff
path: root/src/subcmd/processer.rs
diff options
context:
space:
mode:
author魏曹先生 <1992414357@qq.com>2026-01-22 08:40:59 +0800
committer魏曹先生 <1992414357@qq.com>2026-01-22 08:40:59 +0800
commit53c26d656f975f93319dd432e409c1ea740ce06d (patch)
tree22796b4e438655868e02954e5d2770ed676ccbb7 /src/subcmd/processer.rs
parentaca8b408755f9041da9ee083c625de2a8d8c6785 (diff)
Rename subcmd module to cmd and update references
Diffstat (limited to 'src/subcmd/processer.rs')
-rw-r--r--src/subcmd/processer.rs40
1 files changed, 0 insertions, 40 deletions
diff --git a/src/subcmd/processer.rs b/src/subcmd/processer.rs
deleted file mode 100644
index 5849c62..0000000
--- a/src/subcmd/processer.rs
+++ /dev/null
@@ -1,40 +0,0 @@
-use crate::subcmd::cmd::JVCommandContext;
-use crate::subcmd::cmds::_registry::{jv_cmd_nodes, jv_cmd_process_node};
-use crate::subcmd::errors::CmdProcessError;
-use crate::subcmd::renderer::JVRenderResult;
-
-pub async fn jv_cmd_process(
- args: Vec<String>,
- ctx: JVCommandContext,
-) -> Result<JVRenderResult, CmdProcessError> {
- let nodes = jv_cmd_nodes();
- let command = args.join(" ");
-
- // Find nodes that match the beginning of the command
- let matching_nodes: Vec<&String> = nodes
- .iter()
- .filter(|node| command.starts_with(node.as_str()))
- .collect();
-
- match matching_nodes.len() {
- 0 => {
- // No matching node found
- return Err(CmdProcessError::NoMatchingCommand);
- }
- 1 => {
- let matched_prefix = matching_nodes[0];
- let prefix_len = matched_prefix.split_whitespace().count();
- let trimmed_args: Vec<String> = args.into_iter().skip(prefix_len).collect();
- return jv_cmd_process_node(matched_prefix, trimmed_args, ctx).await;
- }
- _ => {
- // Multiple matching nodes found
- return Err(CmdProcessError::AmbiguousCommand(
- matching_nodes
- .iter()
- .map(|s| s.to_string())
- .collect::<Vec<String>>(),
- ));
- }
- }
-}