From 3b17e2b362a45493a515edb4cc187fb8bb156d89 Mon Sep 17 00:00:00 2001 From: Caznix Date: Sat, 11 Jan 2025 15:12:18 -0500 Subject: [PATCH] remove categories --- engine/src/core/repl/handler.rs | 37 --------------------------------- engine/src/core/repl/mod.rs | 11 +++------- engine/src/core/repl/zlua.rs | 3 +-- 3 files changed, 4 insertions(+), 47 deletions(-) diff --git a/engine/src/core/repl/handler.rs b/engine/src/core/repl/handler.rs index d3892f7..e285c6c 100644 --- a/engine/src/core/repl/handler.rs +++ b/engine/src/core/repl/handler.rs @@ -92,7 +92,6 @@ fn check_similarity(target: &str) -> Option { pub struct CommandManager { pub commands: HashMap>, pub aliases: HashMap, - pub categories: HashMap, } impl CommandManager { @@ -100,14 +99,9 @@ impl CommandManager { CommandManager { commands: HashMap::new(), aliases: HashMap::new(), - categories: HashMap::new(), } } - pub fn add_category(&mut self, category: Category) { - self.categories.insert(category.name.clone(), category); - } - pub fn get_commands(&self) -> std::collections::hash_map::Iter<'_, String, Box> { self.commands.iter() } @@ -146,16 +140,6 @@ impl CommandManager { .insert(command.get_name().to_lowercase(), command); } - pub fn add_command_with_category(&mut self, command: Box, category: Category) { - if self.categories.contains_key(&category.name) { - let mut cmd_name = command.get_name().to_lowercase(); - cmd_name.insert_str(0, &format!("{}_", &&category.uid.to_lowercase())); - println!("{}", cmd_name); - self.commands.insert(cmd_name, command); - } else { - panic!("Category {} does not exist", category.name); - } - } pub fn add_alias(&mut self, alias: &str, command: &str) { self.aliases.insert( @@ -164,28 +148,7 @@ impl CommandManager { ); } } -#[derive(Debug, Clone)] -pub struct Category { - // eg: Zenyx -> Z - // eg: core -> cr - // eg: exitcmd -> cr_exit - // eg: echo -> z_echo - pub uid: String, - // eg: Zenyx - pub name: String, - // eg: Zenyx internal commands - pub description: String, -} -impl Category { - pub fn new(uid: &str, name: &str, description: &str) -> Self { - Self { - uid: uid.to_string(), - name: name.to_string(), - description: description.to_string(), - } - } -} pub trait Command: Send + Sync { fn execute(&self, args: Option>) -> Result<(), anyhow::Error>; diff --git a/engine/src/core/repl/mod.rs b/engine/src/core/repl/mod.rs index d41fe90..e3f1119 100644 --- a/engine/src/core/repl/mod.rs +++ b/engine/src/core/repl/mod.rs @@ -1,8 +1,6 @@ use commands::{ - ClearCommand, CounterCommand, ExecFile, ExitCommand, HelpCommand, PanicCommmand + ClearCommand, CounterCommand, ExitCommand, HelpCommand, PanicCommmand,ExecFile }; -use handler::{COMMAND_MANAGER, Category}; -use zlua::ZLua; use crate::commands; @@ -14,15 +12,12 @@ pub mod zlua; pub fn setup() { commands!( HelpCommand, + ExecFile, + ClearCommand, ExitCommand, CounterCommand, PanicCommmand, zlua::ZLua ); - let cat = Category::new("cr", "Core", "Core commands"); - COMMAND_MANAGER.write().add_category(cat.clone()); - COMMAND_MANAGER - .write() - .add_command_with_category(Box::new(ExecFile), cat.clone()); } diff --git a/engine/src/core/repl/zlua.rs b/engine/src/core/repl/zlua.rs index 90203c5..9936db0 100644 --- a/engine/src/core/repl/zlua.rs +++ b/engine/src/core/repl/zlua.rs @@ -84,8 +84,7 @@ impl Command for ZLua { .. }) => { // continue reading input and append it to `line` - line.push_str("\n"); // separate input lines - prompt = prompt; + line.push('\n'); // separate input lines } Err(e) => {