#include #include #include #include #include #include #include void Clippy::Run(const std::vector& args) { auto result = TryExecuteClippyCommand(args); if (result) { result->Execute(); return; } } Clippy::TargetPtr Clippy::TryExecuteClippyCommand( const std::vector& args) { using namespace utils::parametres; using namespace clippy::targets; if (CheckPatternParametres(args, Parameter::Skip, "help", Parameter::Anything)) { std::cout << "Hello I'm clippy" << std::endl; std::cout << "Parametres: { "; for (size_t i = 0; i < args.size(); ++i) { std::cout << args[i] << (i + 1 == args.size() ? "" : ",") << " "; } std::cout << "}" << std::endl; return std::make_unique(); } if (CheckPatternParametres(args, Parameter::Skip, "cfg", Parameter::Anything)) { projects_.LoadFrom("test"); auto p = projects_.GetCurrentProject(); if (p.has_value()) { return std::make_unique(p.value().configuration_file); } else { return std::make_unique(projects_); } } return nullptr; }