Lines Matching refs:syntax

164 static syntax::NodeKind getOperatorNodeKind(const CXXOperatorCallExpr &E) {  in getOperatorNodeKind()
197 return syntax::NodeKind::BinaryOperatorExpression; in getOperatorNodeKind()
200 return syntax::NodeKind::PrefixUnaryOperatorExpression; in getOperatorNodeKind()
206 return syntax::NodeKind::PrefixUnaryOperatorExpression; in getOperatorNodeKind()
208 return syntax::NodeKind::PostfixUnaryOperatorExpression; in getOperatorNodeKind()
219 return syntax::NodeKind::PrefixUnaryOperatorExpression; in getOperatorNodeKind()
221 return syntax::NodeKind::BinaryOperatorExpression; in getOperatorNodeKind()
225 return syntax::NodeKind::BinaryOperatorExpression; in getOperatorNodeKind()
234 return syntax::NodeKind::UnknownExpression; in getOperatorNodeKind()
236 return syntax::NodeKind::CallExpression; in getOperatorNodeKind()
322 void add(ASTPtr From, syntax::Tree *To) { in add()
331 void add(NestedNameSpecifierLoc From, syntax::Tree *To) { in add()
340 syntax::Tree *find(ASTPtr P) const { return Nodes.lookup(P); } in find()
342 syntax::Tree *find(NestedNameSpecifierLoc P) const { in find()
347 llvm::DenseMap<ASTPtr, syntax::Tree *> Nodes;
348 llvm::DenseMap<NestedNameSpecifierLoc, syntax::Tree *> NNSNodes;
367 class syntax::TreeBuilder {
369 TreeBuilder(syntax::Arena &Arena, TokenBufferTokenManager& TBTM) in TreeBuilder()
384 void foldNode(ArrayRef<syntax::Token> Range, syntax::Tree *New, ASTPtr From) { in foldNode()
391 void foldNode(ArrayRef<syntax::Token> Range, syntax::Tree *New, TypeLoc L) { in foldNode()
396 void foldNode(llvm::ArrayRef<syntax::Token> Range, syntax::Tree *New, in foldNode()
406 void foldList(ArrayRef<syntax::Token> SuperRange, syntax::List *New, in foldList()
430 void markChildToken(const syntax::Token *T, NodeRole R);
433 void markChild(syntax::Node *N, NodeRole R);
440 syntax::TranslationUnit *finalize() && { in finalize()
447 new (Arena.getAllocator()) syntax::TranslationUnit); in finalize()
449 auto *TU = cast<syntax::TranslationUnit>(std::move(Pending).finalize()); in finalize()
455 const syntax::Token *findToken(SourceLocation L) const;
458 ArrayRef<syntax::Token> getRange(SourceRange Range) const { in getRange()
466 ArrayRef<syntax::Token> getRange(SourceLocation First, in getRange()
475 ArrayRef<syntax::Token>
509 ArrayRef<syntax::Token> getDeclarationRange(Decl *D) { in getDeclarationRange()
510 ArrayRef<syntax::Token> Tokens; in getDeclarationRange()
519 ArrayRef<syntax::Token> getExprRange(const Expr *E) const { in getExprRange()
525 ArrayRef<syntax::Token> getStmtRange(const Stmt *S) const { in getStmtRange()
538 ArrayRef<syntax::Token> maybeAppendSemicolon(ArrayRef<syntax::Token> Tokens, in maybeAppendSemicolon()
549 ArrayRef<syntax::Token>
550 withTrailingSemicolon(ArrayRef<syntax::Token> Tokens) const { in withTrailingSemicolon()
559 void setRole(syntax::Node *N, NodeRole R) { in setRole()
571 Forest(syntax::Arena &A, const syntax::TokenBuffer &TB) { in Forest()
578 syntax::Leaf(reinterpret_cast<TokenManager::Key>(&T)); in Forest()
585 void assignRole(ArrayRef<syntax::Token> Range, syntax::NodeRole Role) { in assignRole()
600 ArrayRef<syntax::Token> shrinkToFitList(ArrayRef<syntax::Token> Range) { in shrinkToFitList()
613 return Role == syntax::NodeRole::ListElement || in shrinkToFitList()
614 Role == syntax::NodeRole::ListDelimiter; in shrinkToFitList()
623 return ArrayRef<syntax::Token>(BeginListChildren->first, in shrinkToFitList()
628 void foldChildren(const syntax::TokenBuffer &TB, in foldChildren()
629 ArrayRef<syntax::Token> Tokens, syntax::Tree *Node) { in foldChildren()
661 syntax::Node *finalize() && { in finalize()
668 std::string str(const syntax::TokenBufferTokenManager &STM) const { in str()
688 std::map<const syntax::Token *, syntax::Node *> Trees;
694 syntax::Arena &Arena;
697 llvm::DenseMap<SourceLocation, const syntax::Token *> LocationToToken;
706 explicit BuildTreeVisitor(ASTContext &Context, syntax::TreeBuilder &Builder) in BuildTreeVisitor()
722 new (allocator()) syntax::UnknownDeclaration(), D); in VisitDecl()
736 cast<syntax::SimpleDeclaration>(handleFreeStandingTagDecl(C)); in TraverseClassTemplateSpecializationDecl()
762 syntax::Declaration *handleFreeStandingTagDecl(TagDecl *C) { in handleFreeStandingTagDecl()
766 syntax::Declaration *Result = new (allocator()) syntax::SimpleDeclaration; in handleFreeStandingTagDecl()
791 using NodeRole = syntax::NodeRole; in WalkUpFromCompoundStmt()
799 new (allocator()) syntax::CompoundStatement, S); in WalkUpFromCompoundStmt()
806 new (allocator()) syntax::UnknownStatement, S); in WalkUpFromStmt()
874 new (allocator()) syntax::UnknownExpression, E); in WalkUpFromExpr()
887 syntax::UserDefinedLiteralExpression *
891 return new (allocator()) syntax::IntegerUserDefinedLiteralExpression; in buildUserDefinedLiteral()
893 return new (allocator()) syntax::FloatUserDefinedLiteralExpression; in buildUserDefinedLiteral()
895 return new (allocator()) syntax::CharUserDefinedLiteralExpression; in buildUserDefinedLiteral()
897 return new (allocator()) syntax::StringUserDefinedLiteralExpression; in buildUserDefinedLiteral()
912 return new (allocator()) syntax::IntegerUserDefinedLiteralExpression; in buildUserDefinedLiteral()
915 return new (allocator()) syntax::FloatUserDefinedLiteralExpression; in buildUserDefinedLiteral()
922 Builder.markChildToken(S->getBeginLoc(), syntax::NodeRole::LiteralToken); in WalkUpFromUserDefinedLiteral()
954 syntax::NodeKind getNameSpecifierKind(const NestedNameSpecifier &NNS) { in getNameSpecifierKind()
957 return syntax::NodeKind::GlobalNameSpecifier; in getNameSpecifierKind()
961 return syntax::NodeKind::IdentifierNameSpecifier; in getNameSpecifierKind()
963 return syntax::NodeKind::SimpleTemplateNameSpecifier; in getNameSpecifierKind()
968 return syntax::NodeKind::DecltypeNameSpecifier; in getNameSpecifierKind()
971 return syntax::NodeKind::SimpleTemplateNameSpecifier; in getNameSpecifierKind()
972 return syntax::NodeKind::IdentifierNameSpecifier; in getNameSpecifierKind()
981 syntax::NameSpecifier *
987 case syntax::NodeKind::GlobalNameSpecifier: in buildNameSpecifier()
988 return new (allocator()) syntax::GlobalNameSpecifier; in buildNameSpecifier()
989 case syntax::NodeKind::IdentifierNameSpecifier: { in buildNameSpecifier()
992 syntax::NodeRole::Unknown); in buildNameSpecifier()
993 auto *NS = new (allocator()) syntax::IdentifierNameSpecifier; in buildNameSpecifier()
997 case syntax::NodeKind::SimpleTemplateNameSpecifier: { in buildNameSpecifier()
1003 auto *NS = new (allocator()) syntax::SimpleTemplateNameSpecifier; in buildNameSpecifier()
1007 case syntax::NodeKind::DecltypeNameSpecifier: { in buildNameSpecifier()
1011 auto *NS = new (allocator()) syntax::DecltypeNameSpecifier; in buildNameSpecifier()
1035 Builder.markChild(NS, syntax::NodeRole::ListElement); in TraverseNestedNameSpecifierLoc()
1036 Builder.markChildToken(It.getEndLoc(), syntax::NodeRole::ListDelimiter); in TraverseNestedNameSpecifierLoc()
1039 new (allocator()) syntax::NestedNameSpecifier, in TraverseNestedNameSpecifierLoc()
1044 syntax::IdExpression *buildIdExpression(NestedNameSpecifierLoc QualifierLoc, in buildIdExpression()
1049 Builder.markChild(QualifierLoc, syntax::NodeRole::Qualifier); in buildIdExpression()
1052 syntax::NodeRole::TemplateKeyword); in buildIdExpression()
1055 auto *TheUnqualifiedId = new (allocator()) syntax::UnqualifiedId; in buildIdExpression()
1058 Builder.markChild(TheUnqualifiedId, syntax::NodeRole::UnqualifiedId); in buildIdExpression()
1063 auto *TheIdExpression = new (allocator()) syntax::IdExpression; in buildIdExpression()
1085 Builder.markChild(TheIdExpression, syntax::NodeRole::Member); in WalkUpFromMemberExpr()
1087 Builder.markExprChild(S->getBase(), syntax::NodeRole::Object); in WalkUpFromMemberExpr()
1088 Builder.markChildToken(S->getOperatorLoc(), syntax::NodeRole::AccessToken); in WalkUpFromMemberExpr()
1091 new (allocator()) syntax::MemberExpression, S); in WalkUpFromMemberExpr()
1113 syntax::NodeRole::IntroducerKeyword); in WalkUpFromCXXThisExpr()
1115 new (allocator()) syntax::ThisExpression, S); in WalkUpFromCXXThisExpr()
1121 Builder.markChildToken(S->getLParen(), syntax::NodeRole::OpenParen); in WalkUpFromParenExpr()
1122 Builder.markExprChild(S->getSubExpr(), syntax::NodeRole::SubExpression); in WalkUpFromParenExpr()
1123 Builder.markChildToken(S->getRParen(), syntax::NodeRole::CloseParen); in WalkUpFromParenExpr()
1125 new (allocator()) syntax::ParenExpression, S); in WalkUpFromParenExpr()
1130 Builder.markChildToken(S->getLocation(), syntax::NodeRole::LiteralToken); in WalkUpFromIntegerLiteral()
1132 new (allocator()) syntax::IntegerLiteralExpression, S); in WalkUpFromIntegerLiteral()
1137 Builder.markChildToken(S->getLocation(), syntax::NodeRole::LiteralToken); in WalkUpFromCharacterLiteral()
1139 new (allocator()) syntax::CharacterLiteralExpression, S); in WalkUpFromCharacterLiteral()
1144 Builder.markChildToken(S->getLocation(), syntax::NodeRole::LiteralToken); in WalkUpFromFloatingLiteral()
1146 new (allocator()) syntax::FloatingLiteralExpression, S); in WalkUpFromFloatingLiteral()
1151 Builder.markChildToken(S->getBeginLoc(), syntax::NodeRole::LiteralToken); in WalkUpFromStringLiteral()
1153 new (allocator()) syntax::StringLiteralExpression, S); in WalkUpFromStringLiteral()
1158 Builder.markChildToken(S->getLocation(), syntax::NodeRole::LiteralToken); in WalkUpFromCXXBoolLiteralExpr()
1160 new (allocator()) syntax::BoolLiteralExpression, S); in WalkUpFromCXXBoolLiteralExpr()
1165 Builder.markChildToken(S->getLocation(), syntax::NodeRole::LiteralToken); in WalkUpFromCXXNullPtrLiteralExpr()
1167 new (allocator()) syntax::CxxNullPtrExpression, S); in WalkUpFromCXXNullPtrLiteralExpr()
1173 syntax::NodeRole::OperatorToken); in WalkUpFromUnaryOperator()
1174 Builder.markExprChild(S->getSubExpr(), syntax::NodeRole::Operand); in WalkUpFromUnaryOperator()
1178 new (allocator()) syntax::PostfixUnaryOperatorExpression, in WalkUpFromUnaryOperator()
1182 new (allocator()) syntax::PrefixUnaryOperatorExpression, in WalkUpFromUnaryOperator()
1189 Builder.markExprChild(S->getLHS(), syntax::NodeRole::LeftHandSide); in WalkUpFromBinaryOperator()
1191 syntax::NodeRole::OperatorToken); in WalkUpFromBinaryOperator()
1192 Builder.markExprChild(S->getRHS(), syntax::NodeRole::RightHandSide); in WalkUpFromBinaryOperator()
1194 new (allocator()) syntax::BinaryOperatorExpression, S); in WalkUpFromBinaryOperator()
1200 syntax::CallArguments *
1204 Builder.markExprChild(Arg, syntax::NodeRole::ListElement); in buildCallArguments()
1208 Builder.markChildToken(DelimiterToken, syntax::NodeRole::ListDelimiter); in buildCallArguments()
1211 auto *Arguments = new (allocator()) syntax::CallArguments; in buildCallArguments()
1221 Builder.markExprChild(S->getCallee(), syntax::NodeRole::Callee); in WalkUpFromCallExpr()
1228 Builder.markChildToken(LParenToken, syntax::NodeRole::OpenParen); in WalkUpFromCallExpr()
1231 syntax::NodeRole::Arguments); in WalkUpFromCallExpr()
1233 Builder.markChildToken(S->getRParenLoc(), syntax::NodeRole::CloseParen); in WalkUpFromCallExpr()
1236 new (allocator()) syntax::CallExpression, S); in WalkUpFromCallExpr()
1262 syntax::NodeKind::PostfixUnaryOperatorExpression); in TraverseCXXOperatorCallExpr()
1273 case syntax::NodeKind::BinaryOperatorExpression: in WalkUpFromCXXOperatorCallExpr()
1274 Builder.markExprChild(S->getArg(0), syntax::NodeRole::LeftHandSide); in WalkUpFromCXXOperatorCallExpr()
1276 syntax::NodeRole::OperatorToken); in WalkUpFromCXXOperatorCallExpr()
1277 Builder.markExprChild(S->getArg(1), syntax::NodeRole::RightHandSide); in WalkUpFromCXXOperatorCallExpr()
1279 new (allocator()) syntax::BinaryOperatorExpression, S); in WalkUpFromCXXOperatorCallExpr()
1281 case syntax::NodeKind::PrefixUnaryOperatorExpression: in WalkUpFromCXXOperatorCallExpr()
1283 syntax::NodeRole::OperatorToken); in WalkUpFromCXXOperatorCallExpr()
1284 Builder.markExprChild(S->getArg(0), syntax::NodeRole::Operand); in WalkUpFromCXXOperatorCallExpr()
1286 new (allocator()) syntax::PrefixUnaryOperatorExpression, in WalkUpFromCXXOperatorCallExpr()
1289 case syntax::NodeKind::PostfixUnaryOperatorExpression: in WalkUpFromCXXOperatorCallExpr()
1291 syntax::NodeRole::OperatorToken); in WalkUpFromCXXOperatorCallExpr()
1292 Builder.markExprChild(S->getArg(0), syntax::NodeRole::Operand); in WalkUpFromCXXOperatorCallExpr()
1294 new (allocator()) syntax::PostfixUnaryOperatorExpression, in WalkUpFromCXXOperatorCallExpr()
1297 case syntax::NodeKind::CallExpression: { in WalkUpFromCXXOperatorCallExpr()
1298 Builder.markExprChild(S->getArg(0), syntax::NodeRole::Callee); in WalkUpFromCXXOperatorCallExpr()
1305 Builder.markChildToken(LParenToken, syntax::NodeRole::OpenParen); in WalkUpFromCXXOperatorCallExpr()
1309 syntax::NodeRole::Arguments); in WalkUpFromCXXOperatorCallExpr()
1311 Builder.markChildToken(S->getRParenLoc(), syntax::NodeRole::CloseParen); in WalkUpFromCXXOperatorCallExpr()
1314 new (allocator()) syntax::CallExpression, S); in WalkUpFromCXXOperatorCallExpr()
1317 case syntax::NodeKind::UnknownExpression: in WalkUpFromCXXOperatorCallExpr()
1334 Builder.foldNode(Tokens, new (allocator()) syntax::NamespaceDefinition, S); in WalkUpFromNamespaceDecl()
1348 Builder.markChildToken(L.getLParenLoc(), syntax::NodeRole::OpenParen); in WalkUpFromParenTypeLoc()
1349 Builder.markChildToken(L.getRParenLoc(), syntax::NodeRole::CloseParen); in WalkUpFromParenTypeLoc()
1351 new (allocator()) syntax::ParenDeclarator, L); in WalkUpFromParenTypeLoc()
1357 Builder.markChildToken(L.getLBracketLoc(), syntax::NodeRole::OpenParen); in WalkUpFromArrayTypeLoc()
1358 Builder.markExprChild(L.getSizeExpr(), syntax::NodeRole::Size); in WalkUpFromArrayTypeLoc()
1359 Builder.markChildToken(L.getRBracketLoc(), syntax::NodeRole::CloseParen); in WalkUpFromArrayTypeLoc()
1361 new (allocator()) syntax::ArraySubscript, L); in WalkUpFromArrayTypeLoc()
1365 syntax::ParameterDeclarationList *
1368 Builder.markChild(P, syntax::NodeRole::ListElement); in buildParameterDeclarationList()
1371 Builder.markChildToken(DelimiterToken, syntax::NodeRole::ListDelimiter); in buildParameterDeclarationList()
1373 auto *Parameters = new (allocator()) syntax::ParameterDeclarationList; in buildParameterDeclarationList()
1382 Builder.markChildToken(L.getLParenLoc(), syntax::NodeRole::OpenParen); in WalkUpFromFunctionTypeLoc()
1385 syntax::NodeRole::Parameters); in WalkUpFromFunctionTypeLoc()
1387 Builder.markChildToken(L.getRParenLoc(), syntax::NodeRole::CloseParen); in WalkUpFromFunctionTypeLoc()
1389 new (allocator()) syntax::ParametersAndQualifiers, L); in WalkUpFromFunctionTypeLoc()
1399 Builder.markChild(TrailingReturnTokens, syntax::NodeRole::TrailingReturn); in WalkUpFromFunctionProtoTypeLoc()
1416 new (allocator()) syntax::MemberPointer, L); in WalkUpFromMemberPointerTypeLoc()
1425 new (allocator()) syntax::DeclarationStatement, S); in WalkUpFromDeclStmt()
1431 new (allocator()) syntax::EmptyStatement, S); in WalkUpFromNullStmt()
1437 syntax::NodeRole::IntroducerKeyword); in WalkUpFromSwitchStmt()
1438 Builder.markStmtChild(S->getBody(), syntax::NodeRole::BodyStatement); in WalkUpFromSwitchStmt()
1440 new (allocator()) syntax::SwitchStatement, S); in WalkUpFromSwitchStmt()
1446 syntax::NodeRole::IntroducerKeyword); in WalkUpFromCaseStmt()
1447 Builder.markExprChild(S->getLHS(), syntax::NodeRole::CaseValue); in WalkUpFromCaseStmt()
1448 Builder.markStmtChild(S->getSubStmt(), syntax::NodeRole::BodyStatement); in WalkUpFromCaseStmt()
1450 new (allocator()) syntax::CaseStatement, S); in WalkUpFromCaseStmt()
1456 syntax::NodeRole::IntroducerKeyword); in WalkUpFromDefaultStmt()
1457 Builder.markStmtChild(S->getSubStmt(), syntax::NodeRole::BodyStatement); in WalkUpFromDefaultStmt()
1459 new (allocator()) syntax::DefaultStatement, S); in WalkUpFromDefaultStmt()
1464 Builder.markChildToken(S->getIfLoc(), syntax::NodeRole::IntroducerKeyword); in WalkUpFromIfStmt()
1468 Builder.markStmtChild(ConditionStatement, syntax::NodeRole::Condition); in WalkUpFromIfStmt()
1469 Builder.markStmtChild(S->getThen(), syntax::NodeRole::ThenStatement); in WalkUpFromIfStmt()
1470 Builder.markChildToken(S->getElseLoc(), syntax::NodeRole::ElseKeyword); in WalkUpFromIfStmt()
1471 Builder.markStmtChild(S->getElse(), syntax::NodeRole::ElseStatement); in WalkUpFromIfStmt()
1473 new (allocator()) syntax::IfStatement, S); in WalkUpFromIfStmt()
1478 Builder.markChildToken(S->getForLoc(), syntax::NodeRole::IntroducerKeyword); in WalkUpFromForStmt()
1479 Builder.markStmtChild(S->getBody(), syntax::NodeRole::BodyStatement); in WalkUpFromForStmt()
1481 new (allocator()) syntax::ForStatement, S); in WalkUpFromForStmt()
1487 syntax::NodeRole::IntroducerKeyword); in WalkUpFromWhileStmt()
1488 Builder.markStmtChild(S->getBody(), syntax::NodeRole::BodyStatement); in WalkUpFromWhileStmt()
1490 new (allocator()) syntax::WhileStatement, S); in WalkUpFromWhileStmt()
1496 syntax::NodeRole::IntroducerKeyword); in WalkUpFromContinueStmt()
1498 new (allocator()) syntax::ContinueStatement, S); in WalkUpFromContinueStmt()
1504 syntax::NodeRole::IntroducerKeyword); in WalkUpFromBreakStmt()
1506 new (allocator()) syntax::BreakStatement, S); in WalkUpFromBreakStmt()
1512 syntax::NodeRole::IntroducerKeyword); in WalkUpFromReturnStmt()
1513 Builder.markExprChild(S->getRetValue(), syntax::NodeRole::ReturnValue); in WalkUpFromReturnStmt()
1515 new (allocator()) syntax::ReturnStatement, S); in WalkUpFromReturnStmt()
1520 Builder.markChildToken(S->getForLoc(), syntax::NodeRole::IntroducerKeyword); in WalkUpFromCXXForRangeStmt()
1521 Builder.markStmtChild(S->getBody(), syntax::NodeRole::BodyStatement); in WalkUpFromCXXForRangeStmt()
1523 new (allocator()) syntax::RangeBasedForStatement, S); in WalkUpFromCXXForRangeStmt()
1529 new (allocator()) syntax::EmptyDeclaration, S); in WalkUpFromEmptyDecl()
1534 Builder.markExprChild(S->getAssertExpr(), syntax::NodeRole::Condition); in WalkUpFromStaticAssertDecl()
1535 Builder.markExprChild(S->getMessage(), syntax::NodeRole::Message); in WalkUpFromStaticAssertDecl()
1537 new (allocator()) syntax::StaticAssertDeclaration, S); in WalkUpFromStaticAssertDecl()
1543 new (allocator()) syntax::LinkageSpecificationDeclaration, in WalkUpFromLinkageSpecDecl()
1550 new (allocator()) syntax::NamespaceAliasDefinition, S); in WalkUpFromNamespaceAliasDecl()
1556 new (allocator()) syntax::UsingNamespaceDirective, S); in WalkUpFromUsingDirectiveDecl()
1562 new (allocator()) syntax::UsingDeclaration, S); in WalkUpFromUsingDecl()
1568 new (allocator()) syntax::UsingDeclaration, S); in WalkUpFromUnresolvedUsingValueDecl()
1574 new (allocator()) syntax::UsingDeclaration, S); in WalkUpFromUnresolvedUsingTypenameDecl()
1580 new (allocator()) syntax::TypeAliasDeclaration, S); in WalkUpFromTypeAliasDecl()
1595 Builder.markChild(new (allocator()) syntax::DeclaratorList, in processDeclaratorAndDeclaration()
1596 syntax::NodeRole::Declarators); in processDeclaratorAndDeclaration()
1598 new (allocator()) syntax::SimpleDeclaration, D); in processDeclaratorAndDeclaration()
1602 auto *N = new (allocator()) syntax::SimpleDeclarator; in processDeclaratorAndDeclaration()
1604 Builder.markChild(N, syntax::NodeRole::ListElement); in processDeclaratorAndDeclaration()
1611 Builder.markChildToken(DelimiterToken, syntax::NodeRole::ListDelimiter); in processDeclaratorAndDeclaration()
1613 auto *DL = new (allocator()) syntax::DeclaratorList; in processDeclaratorAndDeclaration()
1617 Builder.markChild(DL, syntax::NodeRole::Declarators); in processDeclaratorAndDeclaration()
1619 new (allocator()) syntax::SimpleDeclaration, D); in processDeclaratorAndDeclaration()
1625 syntax::TrailingReturnType *buildTrailingReturn(FunctionProtoTypeLoc L) { in buildTrailingReturn()
1632 syntax::SimpleDeclarator *ReturnDeclarator = nullptr; in buildTrailingReturn()
1634 ReturnDeclarator = new (allocator()) syntax::SimpleDeclarator; in buildTrailingReturn()
1644 Builder.markChildToken(Arrow, syntax::NodeRole::ArrowToken); in buildTrailingReturn()
1646 Builder.markChild(ReturnDeclarator, syntax::NodeRole::Declarator); in buildTrailingReturn()
1647 auto *R = new (allocator()) syntax::TrailingReturnType; in buildTrailingReturn()
1653 ArrayRef<syntax::Token> Range, const syntax::Token *ExternKW, in foldExplicitTemplateInstantiation()
1654 const syntax::Token *TemplateKW, in foldExplicitTemplateInstantiation()
1655 syntax::SimpleDeclaration *InnerDeclaration, Decl *From) { in foldExplicitTemplateInstantiation()
1658 Builder.markChildToken(ExternKW, syntax::NodeRole::ExternKeyword); in foldExplicitTemplateInstantiation()
1659 Builder.markChildToken(TemplateKW, syntax::NodeRole::IntroducerKeyword); in foldExplicitTemplateInstantiation()
1660 Builder.markChild(InnerDeclaration, syntax::NodeRole::Declaration); in foldExplicitTemplateInstantiation()
1662 Range, new (allocator()) syntax::ExplicitTemplateInstantiation, From); in foldExplicitTemplateInstantiation()
1665 syntax::TemplateDeclaration *foldTemplateDeclaration( in foldTemplateDeclaration()
1666 ArrayRef<syntax::Token> Range, const syntax::Token *TemplateKW, in foldTemplateDeclaration()
1667 ArrayRef<syntax::Token> TemplatedDeclaration, Decl *From) { in foldTemplateDeclaration()
1669 Builder.markChildToken(TemplateKW, syntax::NodeRole::IntroducerKeyword); in foldTemplateDeclaration()
1671 auto *N = new (allocator()) syntax::TemplateDeclaration; in foldTemplateDeclaration()
1673 Builder.markChild(N, syntax::NodeRole::Declaration); in foldTemplateDeclaration()
1680 syntax::TreeBuilder &Builder;
1685 void syntax::TreeBuilder::noticeDeclWithoutSemicolon(Decl *D) { in noticeDeclWithoutSemicolon()
1689 void syntax::TreeBuilder::markChildToken(SourceLocation Loc, NodeRole Role) { in markChildToken()
1695 void syntax::TreeBuilder::markChildToken(const syntax::Token *T, NodeRole R) { in markChildToken()
1701 void syntax::TreeBuilder::markChild(syntax::Node *N, NodeRole R) { in markChild()
1706 void syntax::TreeBuilder::markChild(ASTPtr N, NodeRole R) { in markChild()
1711 void syntax::TreeBuilder::markChild(NestedNameSpecifierLoc NNSLoc, NodeRole R) { in markChild()
1717 void syntax::TreeBuilder::markStmtChild(Stmt *Child, NodeRole Role) { in markStmtChild()
1721 syntax::Tree *ChildNode; in markStmtChild()
1726 ChildNode = new (allocator()) syntax::ExpressionStatement; in markStmtChild()
1736 void syntax::TreeBuilder::markExprChild(Expr *Child, NodeRole Role) { in markExprChild()
1741 syntax::Tree *ChildNode = Mapping.find(Child); in markExprChild()
1746 const syntax::Token *syntax::TreeBuilder::findToken(SourceLocation L) const { in findToken()
1754 syntax::TranslationUnit *syntax::buildSyntaxTree(Arena &A, in buildSyntaxTree()