diff --git a/include/commands/commands.tpp b/include/commands/commands.tpp new file mode 100644 index 0000000..28e3e0d --- /dev/null +++ b/include/commands/commands.tpp @@ -0,0 +1,30 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* commands.tpp :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: rparodi +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2025/05/24 17:34:30 by rparodi #+# #+# */ +/* Updated: 2025/05/24 18:23:26 by rparodi ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "commands.hpp" + +/** + * @brief Return the element searched in a list + * + * @tparam T Type of the list have to be search (have to get an getName() method) + * @param list list to search in + * @param name name of the element to search + * @return pointer to the element found or nullptr if not found + */ +template +T cmd::searchList(const std::list &list, const std::string &name) { + for (typename std::list::iterator it = list.begin(); it != list.end(); ++it) { + if ((*it)->getName() == name) + return *it; + } + return nullptr; +}