feat(mcp): Finalize C/C++ AST tools with robust testing and bug fixes

This commit is contained in:
2026-05-05 20:08:51 -04:00
parent 584e8e526e
commit 992e206769
10 changed files with 468 additions and 230 deletions
@@ -0,0 +1,42 @@
#pragma once
#include <string>
#include <memory>
#include <vector>
namespace gencpp {
namespace core {
/**
* @brief Base class for all components in the system.
*/
template <typename T>
class BaseComponent {
public:
virtual ~BaseComponent() = default;
virtual void Initialize() = 0;
virtual void Shutdown() = 0;
virtual const std::string& GetName() const = 0;
struct Config {
std::string name;
int priority;
bool enabled;
class Metadata {
public:
std::string author;
std::string version;
};
Metadata metadata;
};
protected:
BaseComponent(const Config& config) : m_config(config) {}
Config m_config;
};
} // namespace core
} // namespace gencpp