Skip to content

Commit b8ced14

Browse files
committed
[SyntaxParse] Improve ParsedRawSyntaxNode::dump()
1 parent 6fcbb40 commit b8ced14

File tree

2 files changed

+23
-26
lines changed

2 files changed

+23
-26
lines changed

lib/Parse/ParsedRawSyntaxNode.cpp

Lines changed: 22 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -56,37 +56,34 @@ void ParsedRawSyntaxNode::dump() const {
5656
}
5757

5858
void ParsedRawSyntaxNode::dump(llvm::raw_ostream &OS, unsigned Indent) const {
59-
auto indent = [&](unsigned Amount) {
60-
for (decltype(Amount) i = 0; i < Amount; ++i) {
61-
OS << ' ';
62-
}
63-
};
64-
65-
indent(Indent);
66-
67-
if (isNull()) {
68-
OS << "(<NULL>)";
69-
return;
70-
}
71-
59+
for (decltype(Indent) i = 0; i < Indent; ++i)
60+
OS << ' ';
7261
OS << '(';
7362
dumpSyntaxKind(OS, getKind());
7463

75-
if (isToken()) {
76-
dumpTokenKind(OS, getTokenKind());
77-
78-
} else {
79-
if (isRecorded()) {
80-
OS << " [recorded]";
81-
} else if (isDeferredLayout()) {
64+
switch (DK) {
65+
case DataKind::Null:
66+
OS << "<NULL>";
67+
break;
68+
case DataKind::Recorded:
69+
OS << " [recorded] ";
70+
if (isToken()) {
71+
dumpTokenKind(OS, getTokenKind());
72+
} else {
73+
OS << "<layout>";
74+
}
75+
break;
76+
case DataKind::DeferredLayout:
77+
OS << " [deferred]";
8278
for (const auto &child : getDeferredChildren()) {
8379
OS << "\n";
84-
child.dump(OS, Indent + 1);
80+
child.dump(OS, Indent + 2);
8581
}
86-
} else {
87-
assert(isDeferredToken());
88-
OS << " [deferred token]";
89-
}
82+
break;
83+
case DataKind::DeferredToken:
84+
OS << " [deferred] ";
85+
dumpTokenKind(OS, getTokenKind());
86+
break;
9087
}
9188
OS << ')';
9289
}

lib/Parse/SyntaxParsingContext.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -304,7 +304,7 @@ void SyntaxParsingContext::synthesize(tok Kind, SourceLoc Loc) {
304304
void SyntaxParsingContext::dumpStorage() const {
305305
llvm::errs() << "======================\n";
306306
for (auto Node : getStorage()) {
307-
Node.dump();
307+
Node.dump(llvm::errs());
308308
llvm::errs() << "\n--------------\n";
309309
}
310310
}

0 commit comments

Comments
 (0)