添加ast生成时间签名
This commit is contained in:
parent
6a655ff47f
commit
78b7d60abf
|
@ -564,11 +564,13 @@ VisitMode printer::AstGenerate::mode() const {
|
|||
return VisitMode::FirstParent;
|
||||
}
|
||||
|
||||
#include <QDateTime>
|
||||
bool printer::AstGenerate::visit(std::shared_ptr<const ast_gen::ElementAccess> syntax_element) {
|
||||
switch ((NovelNode)syntax_element->element()->typeMark()) {
|
||||
case NovelNode::GlobalElement:{
|
||||
auto body = doc.createElement(u8"ast");
|
||||
doc.appendChild(body);
|
||||
body.setAttribute(u8"time", QDateTime::currentDateTime().toString(u8"yyyyMMdd_hhmmss"));
|
||||
element_stack.append(body);
|
||||
}break;
|
||||
case NovelNode::Document: break;
|
||||
|
@ -665,6 +667,17 @@ bool printer::AstGenerate::visit(std::shared_ptr<const ast_gen::ElementAccess> s
|
|||
|
||||
append_tokens(dom_article, article_node);
|
||||
}break;
|
||||
case NovelNode::RankDeclaration:{
|
||||
auto ast_element = element_stack.first();
|
||||
auto rank_node = std::dynamic_pointer_cast<const example_novel::RankDeclare>(syntax_element->element());
|
||||
auto dom_rank = doc.createElement(u8"rank");
|
||||
ast_element.appendChild(dom_rank);
|
||||
|
||||
dom_rank.setAttribute(u8"rank", rank_node->rankNumber());
|
||||
dom_rank.setAttribute(u8"doc-path", rank_node->filePath());
|
||||
|
||||
append_tokens(dom_rank, rank_node);
|
||||
}break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue