• Home
  • Raw
  • Download

Lines Matching refs:ASTNode

137 ASTNode::ID Parser::createNode(Args&&... args) {  in createNode()
138 ASTNode::ID result(fFile->fNodes.size()); in createNode()
143 ASTNode::ID Parser::addChild(ASTNode::ID target, ASTNode::ID child) { in addChild()
148 void Parser::createEmptyChild(ASTNode::ID target) { in createEmptyChild()
149 ASTNode::ID child(fFile->fNodes.size()); in createEmptyChild()
158 ASTNode::ID result = this->createNode(/*offset=*/0, ASTNode::Kind::kFile); in compilationUnit()
165 ASTNode::ID dir = this->directive(); in compilationUnit()
175 ASTNode::ID section = this->section(); in compilationUnit()
189 ASTNode::ID decl = this->declaration(); in compilationUnit()
292 bool Parser::isArrayType(ASTNode::ID type) { in isArrayType()
293 const ASTNode& node = this->getNode(type); in isArrayType()
294 SkASSERT(node.fKind == ASTNode::Kind::kType); in isArrayType()
300 ASTNode::ID Parser::directive() { in directive()
303 return ASTNode::ID::Invalid(); in directive()
309 return ASTNode::ID::Invalid(); in directive()
312 return ASTNode::ID::Invalid(); in directive()
316 return ASTNode::ID::Invalid(); in directive()
318 return this->createNode(start.fOffset, ASTNode::Kind::kExtension, this->text(name)); in directive()
321 return ASTNode::ID::Invalid(); in directive()
327 ASTNode::ID Parser::section() { in section()
330 return ASTNode::ID::Invalid(); in section()
337 return ASTNode::ID::Invalid(); in section()
341 return ASTNode::ID::Invalid(); in section()
345 return ASTNode::ID::Invalid(); in section()
364 return ASTNode::ID::Invalid(); in section()
376 return this->createNode(start.fOffset, ASTNode::Kind::kSection, in section()
377 ASTNode::SectionData(name, argument, text)); in section()
382 ASTNode::ID Parser::enumDeclaration() { in enumDeclaration()
385 return ASTNode::ID::Invalid(); in enumDeclaration()
388 return ASTNode::ID::Invalid(); in enumDeclaration()
392 return ASTNode::ID::Invalid(); in enumDeclaration()
395 return ASTNode::ID::Invalid(); in enumDeclaration()
398 ASTNode::ID result = this->createNode(name.fOffset, ASTNode::Kind::kEnum, this->text(name)); in enumDeclaration()
402 return ASTNode::ID::Invalid(); in enumDeclaration()
405 ASTNode::ID value = this->assignmentExpression(); in enumDeclaration()
407 return ASTNode::ID::Invalid(); in enumDeclaration()
409 ASTNode::ID child = this->addChild( in enumDeclaration()
410 result, this->createNode(id.fOffset, ASTNode::Kind::kEnumCase, this->text(id))); in enumDeclaration()
414 this->createNode(id.fOffset, ASTNode::Kind::kEnumCase, this->text(id))); in enumDeclaration()
418 return ASTNode::ID::Invalid(); in enumDeclaration()
421 return ASTNode::ID::Invalid(); in enumDeclaration()
424 ASTNode::ID value = this->assignmentExpression(); in enumDeclaration()
426 return ASTNode::ID::Invalid(); in enumDeclaration()
428 ASTNode::ID child = this->addChild( in enumDeclaration()
430 this->createNode(id.fOffset, ASTNode::Kind::kEnumCase, this->text(id))); in enumDeclaration()
435 this->createNode(id.fOffset, ASTNode::Kind::kEnumCase, this->text(id))); in enumDeclaration()
445 ASTNode::ID Parser::declaration() { in declaration()
452 return ASTNode::ID::Invalid(); in declaration()
467 return this->createNode(lookahead.fOffset, ASTNode::Kind::kModifiers, modifiers); in declaration()
469 ASTNode::ID type = this->type(); in declaration()
471 return ASTNode::ID::Invalid(); in declaration()
475 return ASTNode::ID::Invalid(); in declaration()
478 ASTNode::ID result = this->createNode(name.fOffset, ASTNode::Kind::kFunction); in declaration()
479 ASTNode::FunctionData fd(modifiers, this->text(name), 0); in declaration()
483 ASTNode::ID parameter = this->parameter(); in declaration()
485 return ASTNode::ID::Invalid(); in declaration()
496 return ASTNode::ID::Invalid(); in declaration()
498 ASTNode::ID body; in declaration()
502 return ASTNode::ID::Invalid(); in declaration()
513 ASTNode::ID Parser::varDeclarationsOrExpressionStatement() { in varDeclarationsOrExpressionStatement()
551 ASTNode::ID Parser::varDeclarations() { in varDeclarations()
554 return ASTNode::ID::Invalid(); in varDeclarations()
560 ASTNode::ID Parser::structDeclaration() { in structDeclaration()
562 return ASTNode::ID::Invalid(); in structDeclaration()
566 return ASTNode::ID::Invalid(); in structDeclaration()
569 return ASTNode::ID::Invalid(); in structDeclaration()
573 ASTNode::ID decls = this->varDeclarations(); in structDeclaration()
575 return ASTNode::ID::Invalid(); in structDeclaration()
577 ASTNode& declsNode = getNode(decls); in structDeclaration()
595 ASTNode& var = *iter; in structDeclaration()
596 const ASTNode::VarData& vd = var.getVarData(); in structDeclaration()
600 const ASTNode& size = *var.begin(); in structDeclaration()
601 if (!size || size.fKind != ASTNode::Kind::kInt) { in structDeclaration()
603 return ASTNode::ID::Invalid(); in structDeclaration()
607 return ASTNode::ID::Invalid(); in structDeclaration()
621 return ASTNode::ID::Invalid(); in structDeclaration()
626 return ASTNode::ID::Invalid(); in structDeclaration()
631 return ASTNode::ID::Invalid(); in structDeclaration()
634 return this->createNode(name.fOffset, ASTNode::Kind::kType, this->text(name)); in structDeclaration()
638 ASTNode::ID Parser::structVarDeclaration(Modifiers modifiers) { in structVarDeclaration()
639 ASTNode::ID type = this->structDeclaration(); in structVarDeclaration()
641 return ASTNode::ID::Invalid(); in structVarDeclaration()
653 ASTNode::ID Parser::varDeclarationEnd(Modifiers mods, ASTNode::ID type, StringFragment name) { in varDeclarationEnd()
655 ASTNode::ID result = this->createNode(offset, ASTNode::Kind::kVarDeclarations); in varDeclarationEnd()
656 this->addChild(result, this->createNode(offset, ASTNode::Kind::kModifiers, mods)); in varDeclarationEnd()
659 auto parseArrayDimensions = [&](ASTNode::ID currentVar, ASTNode::VarData* vd) -> bool { in varDeclarationEnd()
668 ASTNode::ID size = this->expression(); in varDeclarationEnd()
682 auto parseInitializer = [this](ASTNode::ID currentVar) -> bool { in varDeclarationEnd()
684 ASTNode::ID value = this->assignmentExpression(); in varDeclarationEnd()
693 ASTNode::ID currentVar = this->createNode(offset, ASTNode::Kind::kVarDeclaration); in varDeclarationEnd()
694 ASTNode::VarData vd{name, /*isArray=*/false}; in varDeclarationEnd()
698 return ASTNode::ID::Invalid(); in varDeclarationEnd()
702 return ASTNode::ID::Invalid(); in varDeclarationEnd()
708 return ASTNode::ID::Invalid(); in varDeclarationEnd()
711 currentVar = ASTNode::ID(fFile->fNodes.size()); in varDeclarationEnd()
712 vd = ASTNode::VarData{this->text(identifierName), /*isArray=*/false}; in varDeclarationEnd()
713 fFile->fNodes.emplace_back(&fFile->fNodes, offset, ASTNode::Kind::kVarDeclaration); in varDeclarationEnd()
717 return ASTNode::ID::Invalid(); in varDeclarationEnd()
721 return ASTNode::ID::Invalid(); in varDeclarationEnd()
725 return ASTNode::ID::Invalid(); in varDeclarationEnd()
731 ASTNode::ID Parser::parameter() { in parameter()
733 ASTNode::ID type = this->type(); in parameter()
735 return ASTNode::ID::Invalid(); in parameter()
739 return ASTNode::ID::Invalid(); in parameter()
741 ASTNode::ID result = this->createNode(name.fOffset, ASTNode::Kind::kParameter); in parameter()
742 ASTNode::ParameterData pd(modifiers, this->text(name), 0); in parameter()
747 return ASTNode::ID::Invalid(); in parameter()
751 return ASTNode::ID::Invalid(); in parameter()
757 return ASTNode::ID::Invalid(); in parameter()
759 this->addChild(result, this->createNode(sizeToken.fOffset, ASTNode::Kind::kInt, arraySize)); in parameter()
761 return ASTNode::ID::Invalid(); in parameter()
1046 ASTNode::ID Parser::statement() { in statement()
1050 return ASTNode::ID::Invalid(); in statement()
1078 return this->createNode(start.fOffset, ASTNode::Kind::kBlock); in statement()
1088 ASTNode::ID Parser::type() { in type()
1091 return ASTNode::ID::Invalid(); in type()
1095 return ASTNode::ID::Invalid(); in type()
1097 ASTNode::ID result = this->createNode(type.fOffset, ASTNode::Kind::kType, this->text(type)); in type()
1102 return ASTNode::ID::Invalid(); in type()
1108 ASTNode::Kind::kInt, i)); in type()
1110 return ASTNode::ID::Invalid(); in type()
1124 ASTNode::ID Parser::interfaceBlock(Modifiers mods) { in interfaceBlock()
1127 return ASTNode::ID::Invalid(); in interfaceBlock()
1134 return ASTNode::ID::Invalid(); in interfaceBlock()
1136 ASTNode::ID result = this->createNode(name.fOffset, ASTNode::Kind::kInterfaceBlock); in interfaceBlock()
1137 ASTNode::InterfaceBlockData id(mods, this->text(name), 0, "", 0); in interfaceBlock()
1140 ASTNode::ID decl = this->varDeclarations(); in interfaceBlock()
1142 return ASTNode::ID::Invalid(); in interfaceBlock()
1150 return ASTNode::ID::Invalid(); in interfaceBlock()
1153 std::vector<ASTNode> sizes; in interfaceBlock()
1164 ASTNode::ID size = this->expression(); in interfaceBlock()
1166 return ASTNode::ID::Invalid(); in interfaceBlock()
1183 ASTNode::ID Parser::ifStatement() { in ifStatement()
1187 return ASTNode::ID::Invalid(); in ifStatement()
1189 ASTNode::ID result = this->createNode(start.fOffset, ASTNode::Kind::kIf, isStatic); in ifStatement()
1191 return ASTNode::ID::Invalid(); in ifStatement()
1193 ASTNode::ID test = this->expression(); in ifStatement()
1195 return ASTNode::ID::Invalid(); in ifStatement()
1199 return ASTNode::ID::Invalid(); in ifStatement()
1201 ASTNode::ID ifTrue = this->statement(); in ifStatement()
1203 return ASTNode::ID::Invalid(); in ifStatement()
1206 ASTNode::ID ifFalse; in ifStatement()
1210 return ASTNode::ID::Invalid(); in ifStatement()
1218 ASTNode::ID Parser::doStatement() { in doStatement()
1221 return ASTNode::ID::Invalid(); in doStatement()
1223 ASTNode::ID result = this->createNode(start.fOffset, ASTNode::Kind::kDo); in doStatement()
1224 ASTNode::ID statement = this->statement(); in doStatement()
1226 return ASTNode::ID::Invalid(); in doStatement()
1230 return ASTNode::ID::Invalid(); in doStatement()
1233 return ASTNode::ID::Invalid(); in doStatement()
1235 ASTNode::ID test = this->expression(); in doStatement()
1237 return ASTNode::ID::Invalid(); in doStatement()
1241 return ASTNode::ID::Invalid(); in doStatement()
1244 return ASTNode::ID::Invalid(); in doStatement()
1250 ASTNode::ID Parser::whileStatement() { in whileStatement()
1253 return ASTNode::ID::Invalid(); in whileStatement()
1256 return ASTNode::ID::Invalid(); in whileStatement()
1258 ASTNode::ID result = this->createNode(start.fOffset, ASTNode::Kind::kWhile); in whileStatement()
1259 ASTNode::ID test = this->expression(); in whileStatement()
1261 return ASTNode::ID::Invalid(); in whileStatement()
1265 return ASTNode::ID::Invalid(); in whileStatement()
1267 ASTNode::ID statement = this->statement(); in whileStatement()
1269 return ASTNode::ID::Invalid(); in whileStatement()
1276 ASTNode::ID Parser::switchCase() { in switchCase()
1279 return ASTNode::ID::Invalid(); in switchCase()
1281 ASTNode::ID result = this->createNode(start.fOffset, ASTNode::Kind::kSwitchCase); in switchCase()
1282 ASTNode::ID value = this->expression(); in switchCase()
1284 return ASTNode::ID::Invalid(); in switchCase()
1287 return ASTNode::ID::Invalid(); in switchCase()
1293 ASTNode::ID s = this->statement(); in switchCase()
1295 return ASTNode::ID::Invalid(); in switchCase()
1303 ASTNode::ID Parser::switchStatement() { in switchStatement()
1307 return ASTNode::ID::Invalid(); in switchStatement()
1310 return ASTNode::ID::Invalid(); in switchStatement()
1312 ASTNode::ID value = this->expression(); in switchStatement()
1314 return ASTNode::ID::Invalid(); in switchStatement()
1317 return ASTNode::ID::Invalid(); in switchStatement()
1320 return ASTNode::ID::Invalid(); in switchStatement()
1322 ASTNode::ID result = this->createNode(start.fOffset, ASTNode::Kind::kSwitch, isStatic); in switchStatement()
1325 ASTNode::ID c = this->switchCase(); in switchStatement()
1327 return ASTNode::ID::Invalid(); in switchStatement()
1337 return ASTNode::ID::Invalid(); in switchStatement()
1339 ASTNode::ID defaultCase = this->addChild( in switchStatement()
1340 result, this->createNode(defaultStart.fOffset, ASTNode::Kind::kSwitchCase)); in switchStatement()
1343 ASTNode::ID s = this->statement(); in switchStatement()
1345 return ASTNode::ID::Invalid(); in switchStatement()
1351 return ASTNode::ID::Invalid(); in switchStatement()
1358 ASTNode::ID Parser::forStatement() { in forStatement()
1361 return ASTNode::ID::Invalid(); in forStatement()
1364 return ASTNode::ID::Invalid(); in forStatement()
1366 ASTNode::ID result = this->createNode(start.fOffset, ASTNode::Kind::kFor); in forStatement()
1374 ASTNode::ID initializer = this->varDeclarationsOrExpressionStatement(); in forStatement()
1376 return ASTNode::ID::Invalid(); in forStatement()
1380 ASTNode::ID test; in forStatement()
1384 return ASTNode::ID::Invalid(); in forStatement()
1391 return ASTNode::ID::Invalid(); in forStatement()
1393 ASTNode::ID next; in forStatement()
1397 return ASTNode::ID::Invalid(); in forStatement()
1404 return ASTNode::ID::Invalid(); in forStatement()
1406 ASTNode::ID statement = this->statement(); in forStatement()
1408 return ASTNode::ID::Invalid(); in forStatement()
1415 ASTNode::ID Parser::returnStatement() { in returnStatement()
1418 return ASTNode::ID::Invalid(); in returnStatement()
1420 ASTNode::ID result = this->createNode(start.fOffset, ASTNode::Kind::kReturn); in returnStatement()
1422 ASTNode::ID expression = this->expression(); in returnStatement()
1424 return ASTNode::ID::Invalid(); in returnStatement()
1429 return ASTNode::ID::Invalid(); in returnStatement()
1435 ASTNode::ID Parser::breakStatement() { in breakStatement()
1438 return ASTNode::ID::Invalid(); in breakStatement()
1441 return ASTNode::ID::Invalid(); in breakStatement()
1443 return this->createNode(start.fOffset, ASTNode::Kind::kBreak); in breakStatement()
1447 ASTNode::ID Parser::continueStatement() { in continueStatement()
1450 return ASTNode::ID::Invalid(); in continueStatement()
1453 return ASTNode::ID::Invalid(); in continueStatement()
1455 return this->createNode(start.fOffset, ASTNode::Kind::kContinue); in continueStatement()
1459 ASTNode::ID Parser::discardStatement() { in discardStatement()
1462 return ASTNode::ID::Invalid(); in discardStatement()
1465 return ASTNode::ID::Invalid(); in discardStatement()
1467 return this->createNode(start.fOffset, ASTNode::Kind::kDiscard); in discardStatement()
1471 ASTNode::ID Parser::block() { in block()
1474 return ASTNode::ID::Invalid(); in block()
1478 return ASTNode::ID::Invalid(); in block()
1480 ASTNode::ID result = this->createNode(start.fOffset, ASTNode::Kind::kBlock); in block()
1488 return ASTNode::ID::Invalid(); in block()
1490 ASTNode::ID statement = this->statement(); in block()
1492 return ASTNode::ID::Invalid(); in block()
1502 ASTNode::ID Parser::expressionStatement() { in expressionStatement()
1503 ASTNode::ID expr = this->expression(); in expressionStatement()
1509 return ASTNode::ID::Invalid(); in expressionStatement()
1513 ASTNode::ID Parser::expression() { in expression()
1514 ASTNode::ID result = this->assignmentExpression(); in expression()
1516 return ASTNode::ID::Invalid(); in expression()
1522 return ASTNode::ID::Invalid(); in expression()
1524 ASTNode::ID right = this->assignmentExpression(); in expression()
1526 return ASTNode::ID::Invalid(); in expression()
1528 ASTNode::ID newResult = this->createNode(t.fOffset, ASTNode::Kind::kBinary, in expression()
1541 ASTNode::ID Parser::assignmentExpression() { in assignmentExpression()
1543 ASTNode::ID result = this->ternaryExpression(); in assignmentExpression()
1545 return ASTNode::ID::Invalid(); in assignmentExpression()
1561 return ASTNode::ID::Invalid(); in assignmentExpression()
1564 ASTNode::ID right = this->assignmentExpression(); in assignmentExpression()
1566 return ASTNode::ID::Invalid(); in assignmentExpression()
1568 ASTNode::ID newResult = this->createNode(getNode(result).fOffset, in assignmentExpression()
1569 ASTNode::Kind::kBinary, Operator(t.fKind)); in assignmentExpression()
1582 ASTNode::ID Parser::ternaryExpression() { in ternaryExpression()
1584 ASTNode::ID base = this->logicalOrExpression(); in ternaryExpression()
1586 return ASTNode::ID::Invalid(); in ternaryExpression()
1590 return ASTNode::ID::Invalid(); in ternaryExpression()
1592 ASTNode::ID trueExpr = this->expression(); in ternaryExpression()
1594 return ASTNode::ID::Invalid(); in ternaryExpression()
1597 ASTNode::ID falseExpr = this->assignmentExpression(); in ternaryExpression()
1599 return ASTNode::ID::Invalid(); in ternaryExpression()
1601 ASTNode::ID ternary = this->createNode(getNode(base).fOffset, ASTNode::Kind::kTernary); in ternaryExpression()
1607 return ASTNode::ID::Invalid(); in ternaryExpression()
1613 ASTNode::ID Parser::logicalOrExpression() { in logicalOrExpression()
1615 ASTNode::ID result = this->logicalXorExpression(); in logicalOrExpression()
1617 return ASTNode::ID::Invalid(); in logicalOrExpression()
1622 return ASTNode::ID::Invalid(); in logicalOrExpression()
1624 ASTNode::ID right = this->logicalXorExpression(); in logicalOrExpression()
1626 return ASTNode::ID::Invalid(); in logicalOrExpression()
1628 ASTNode::ID newResult = this->createNode(getNode(result).fOffset, ASTNode::Kind::kBinary, in logicalOrExpression()
1638 ASTNode::ID Parser::logicalXorExpression() { in logicalXorExpression()
1640 ASTNode::ID result = this->logicalAndExpression(); in logicalXorExpression()
1642 return ASTNode::ID::Invalid(); in logicalXorExpression()
1647 return ASTNode::ID::Invalid(); in logicalXorExpression()
1649 ASTNode::ID right = this->logicalAndExpression(); in logicalXorExpression()
1651 return ASTNode::ID::Invalid(); in logicalXorExpression()
1653 ASTNode::ID newResult = this->createNode(getNode(result).fOffset, ASTNode::Kind::kBinary, in logicalXorExpression()
1663 ASTNode::ID Parser::logicalAndExpression() { in logicalAndExpression()
1665 ASTNode::ID result = this->bitwiseOrExpression(); in logicalAndExpression()
1667 return ASTNode::ID::Invalid(); in logicalAndExpression()
1672 return ASTNode::ID::Invalid(); in logicalAndExpression()
1674 ASTNode::ID right = this->bitwiseOrExpression(); in logicalAndExpression()
1676 return ASTNode::ID::Invalid(); in logicalAndExpression()
1678 ASTNode::ID newResult = this->createNode(getNode(result).fOffset, ASTNode::Kind::kBinary, in logicalAndExpression()
1688 ASTNode::ID Parser::bitwiseOrExpression() { in bitwiseOrExpression()
1690 ASTNode::ID result = this->bitwiseXorExpression(); in bitwiseOrExpression()
1692 return ASTNode::ID::Invalid(); in bitwiseOrExpression()
1697 return ASTNode::ID::Invalid(); in bitwiseOrExpression()
1699 ASTNode::ID right = this->bitwiseXorExpression(); in bitwiseOrExpression()
1701 return ASTNode::ID::Invalid(); in bitwiseOrExpression()
1703 ASTNode::ID newResult = this->createNode(getNode(result).fOffset, ASTNode::Kind::kBinary, in bitwiseOrExpression()
1713 ASTNode::ID Parser::bitwiseXorExpression() { in bitwiseXorExpression()
1715 ASTNode::ID result = this->bitwiseAndExpression(); in bitwiseXorExpression()
1717 return ASTNode::ID::Invalid(); in bitwiseXorExpression()
1722 return ASTNode::ID::Invalid(); in bitwiseXorExpression()
1724 ASTNode::ID right = this->bitwiseAndExpression(); in bitwiseXorExpression()
1726 return ASTNode::ID::Invalid(); in bitwiseXorExpression()
1728 ASTNode::ID newResult = this->createNode(getNode(result).fOffset, ASTNode::Kind::kBinary, in bitwiseXorExpression()
1738 ASTNode::ID Parser::bitwiseAndExpression() { in bitwiseAndExpression()
1740 ASTNode::ID result = this->equalityExpression(); in bitwiseAndExpression()
1742 return ASTNode::ID::Invalid(); in bitwiseAndExpression()
1747 return ASTNode::ID::Invalid(); in bitwiseAndExpression()
1749 ASTNode::ID right = this->equalityExpression(); in bitwiseAndExpression()
1751 return ASTNode::ID::Invalid(); in bitwiseAndExpression()
1753 ASTNode::ID newResult = this->createNode(getNode(result).fOffset, ASTNode::Kind::kBinary, in bitwiseAndExpression()
1763 ASTNode::ID Parser::equalityExpression() { in equalityExpression()
1765 ASTNode::ID result = this->relationalExpression(); in equalityExpression()
1767 return ASTNode::ID::Invalid(); in equalityExpression()
1774 return ASTNode::ID::Invalid(); in equalityExpression()
1777 ASTNode::ID right = this->relationalExpression(); in equalityExpression()
1779 return ASTNode::ID::Invalid(); in equalityExpression()
1781 ASTNode::ID newResult = this->createNode(getNode(result).fOffset, in equalityExpression()
1782 ASTNode::Kind::kBinary, Operator(t.fKind)); in equalityExpression()
1795 ASTNode::ID Parser::relationalExpression() { in relationalExpression()
1797 ASTNode::ID result = this->shiftExpression(); in relationalExpression()
1799 return ASTNode::ID::Invalid(); in relationalExpression()
1808 return ASTNode::ID::Invalid(); in relationalExpression()
1811 ASTNode::ID right = this->shiftExpression(); in relationalExpression()
1813 return ASTNode::ID::Invalid(); in relationalExpression()
1815 ASTNode::ID newResult = this->createNode(getNode(result).fOffset, in relationalExpression()
1816 ASTNode::Kind::kBinary, Operator(t.fKind)); in relationalExpression()
1829 ASTNode::ID Parser::shiftExpression() { in shiftExpression()
1831 ASTNode::ID result = this->additiveExpression(); in shiftExpression()
1833 return ASTNode::ID::Invalid(); in shiftExpression()
1840 return ASTNode::ID::Invalid(); in shiftExpression()
1843 ASTNode::ID right = this->additiveExpression(); in shiftExpression()
1845 return ASTNode::ID::Invalid(); in shiftExpression()
1847 ASTNode::ID newResult = this->createNode(getNode(result).fOffset, in shiftExpression()
1848 ASTNode::Kind::kBinary, Operator(t.fKind)); in shiftExpression()
1861 ASTNode::ID Parser::additiveExpression() { in additiveExpression()
1863 ASTNode::ID result = this->multiplicativeExpression(); in additiveExpression()
1865 return ASTNode::ID::Invalid(); in additiveExpression()
1872 return ASTNode::ID::Invalid(); in additiveExpression()
1875 ASTNode::ID right = this->multiplicativeExpression(); in additiveExpression()
1877 return ASTNode::ID::Invalid(); in additiveExpression()
1879 ASTNode::ID newResult = this->createNode(getNode(result).fOffset, in additiveExpression()
1880 ASTNode::Kind::kBinary, Operator(t.fKind)); in additiveExpression()
1893 ASTNode::ID Parser::multiplicativeExpression() { in multiplicativeExpression()
1895 ASTNode::ID result = this->unaryExpression(); in multiplicativeExpression()
1897 return ASTNode::ID::Invalid(); in multiplicativeExpression()
1905 return ASTNode::ID::Invalid(); in multiplicativeExpression()
1908 ASTNode::ID right = this->unaryExpression(); in multiplicativeExpression()
1910 return ASTNode::ID::Invalid(); in multiplicativeExpression()
1912 ASTNode::ID newResult = this->createNode(getNode(result).fOffset, in multiplicativeExpression()
1913 ASTNode::Kind::kBinary, Operator(t.fKind)); in multiplicativeExpression()
1926 ASTNode::ID Parser::unaryExpression() { in unaryExpression()
1936 return ASTNode::ID::Invalid(); in unaryExpression()
1939 ASTNode::ID expr = this->unaryExpression(); in unaryExpression()
1941 return ASTNode::ID::Invalid(); in unaryExpression()
1943 ASTNode::ID result = this->createNode(t.fOffset, ASTNode::Kind::kPrefix, in unaryExpression()
1954 ASTNode::ID Parser::postfixExpression() { in postfixExpression()
1956 ASTNode::ID result = this->term(); in postfixExpression()
1958 return ASTNode::ID::Invalid(); in postfixExpression()
1975 return ASTNode::ID::Invalid(); in postfixExpression()
1979 return ASTNode::ID::Invalid(); in postfixExpression()
1990 ASTNode::ID Parser::suffix(ASTNode::ID base) { in suffix()
1995 return ASTNode::ID::Invalid(); in suffix()
2000 ASTNode::ID result = this->createNode(next.fOffset, ASTNode::Kind::kIndex); in suffix()
2004 ASTNode::ID e = this->expression(); in suffix()
2006 return ASTNode::ID::Invalid(); in suffix()
2009 ASTNode::ID result = this->createNode(next.fOffset, ASTNode::Kind::kIndex); in suffix()
2018 ASTNode::ID result = this->createNode(offset, ASTNode::Kind::kScope, in suffix()
2023 return ASTNode::ID::Invalid(); in suffix()
2029 ASTNode::ID result = this->createNode(offset, ASTNode::Kind::kField, in suffix()
2046 return ASTNode::ID::Invalid(); in suffix()
2057 ASTNode::ID result = this->createNode(next.fOffset, ASTNode::Kind::kField, field); in suffix()
2062 ASTNode::ID result = this->createNode(next.fOffset, ASTNode::Kind::kCall); in suffix()
2066 ASTNode::ID expr = this->assignmentExpression(); in suffix()
2068 return ASTNode::ID::Invalid(); in suffix()
2081 ASTNode::ID result = this->createNode(next.fOffset, ASTNode::Kind::kPostfix, in suffix()
2088 return ASTNode::ID::Invalid(); in suffix()
2094 ASTNode::ID Parser::term() { in term()
2100 return this->createNode(t.fOffset, ASTNode::Kind::kIdentifier, std::move(text)); in term()
2107 return this->createNode(t.fOffset, ASTNode::Kind::kInt, i); in term()
2114 return this->createNode(t.fOffset, ASTNode::Kind::kFloat, f); in term()
2122 return this->createNode(t.fOffset, ASTNode::Kind::kBool, b); in term()
2130 return ASTNode::ID::Invalid(); in term()
2132 ASTNode::ID result = this->expression(); in term()
2143 return ASTNode::ID::Invalid(); in term()