auto_plan/include/aise/codegen.hpp

43 lines
1.1 KiB
C++
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#ifndef AISE_CODEGEN_HPP
#define AISE_CODEGEN_HPP
#include "aise/types.hpp"
#include <string>
#include <vector>
namespace aise {
// ── 代码自动生成与追溯SRS-AISE_F-002 ──
class CodegenModule {
public:
CodegenModule();
// 根据需求生成代码框架
// 对应 POST /api/v1/code/generate
struct GenerateResult {
bool success;
std::string output_dir;
std::vector<std::string> generated_files;
std::vector<TraceLink> trace_links; // 生成的追溯关系
std::string error_msg;
};
GenerateResult generate(const std::string& req_id,
const std::string& language,
const std::string& arch_config);
// 查询追溯关系
std::vector<TraceLink> getTraceLinks(const std::string& req_id) const;
// 模拟 AST 构建与代码生成
std::string generateCppSkeleton(const RequirementItem& req);
std::string generateJavaSkeleton(const RequirementItem& req);
private:
std::vector<TraceLink> trace_index_;
};
} // namespace aise
#endif // AISE_CODEGEN_HPP