2013-05-16 4 views
3

Мне нужен пример кода, чтобы узнать, как сгенерировать код C++ из clang :: ASTContext. Я создал ast из кода C++, и я внес некоторые изменения в AST, и теперь я хочу снова сгенерировать код. Может ли кто-нибудь помочь? Заранее спасибо.Как создать код из clang :: ASTContext

ответ

0

Вы не можете использовать Stmt метод печати класса для генерации кода от астра.

virtual bool VisitStmt(Stmt *st){ 
    std::string SStr; 
    llvm::raw_string_ostream S(SStr); 
    st->printPretty(S, nullptr, PrintingPolicy(LangOptions())); 
    const std::string &Str = S.str(); 
    llvm::errs() << "---------begin----------\n"; 
    llvm::errs() << Str << "\n"; 
    llvm::errs() << "---------end----------\n"; 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^