Searched refs:Nonterminals (Results 1 – 10 of 10) sorted by relevance
68 T->Nonterminals.emplace_back(); in build()69 T->Nonterminals.back().Name = Name.str(); in build()71 assert(T->Nonterminals.size() < (1 << (SymbolBits - 1)) && in build()88 for (SymbolID SID = 0; SID < T->Nonterminals.size(); ++SID) in build()89 SymbolIds.try_emplace(T->Nonterminals[SID].Name, SID); in build()124 T->Nonterminals[SID].RuleRange = {Start, End}; in build()160 T->Nonterminals[SID].Name)); in getTopologicalOrder()171 for (SymbolID ID = 0; ID != T->Nonterminals.size(); ++ID) in getTopologicalOrder()173 std::vector<unsigned> Result(T->Nonterminals.size(), 0); in getTopologicalOrder()320 auto Range = T.Nonterminals[SID].RuleRange; in diagnoseGrammar()[all …]
32 const auto &R = T->Nonterminals[SID].RuleRange; in rulesFor()45 return T->Nonterminals[SID].Name; in symbolName()72 T->Nonterminals, in findNonterminal()74 if (It != T->Nonterminals.end() && It->Name == Name) in findNonterminal()75 return It - T->Nonterminals.begin(); in findNonterminal()97 const auto &Range = T->Nonterminals[SID].RuleRange; in dumpRules()107 for (SymbolID SID = 0; SID < T->Nonterminals.size(); ++SID) in dump()117 G.table().Nonterminals.size()); in firstSets()150 G.table().Nonterminals.size()); in followSets()
56 for (SymbolID NontermID = 0; NontermID < G.table().Nonterminals.size(); in dumpForTests()
77 auto RRange = G.table().Nonterminals[NextSym].RuleRange; in closure()235 auto RRange = G.table().Nonterminals[G.underscore()].RuleRange; in buildLR0()
33 for (SymbolID ID = 0; ID < G.table().Nonterminals.size(); ++ID) in symbol()34 if (G.table().Nonterminals[ID].Name == Name) in symbol()41 auto RuleRange = G.table().Nonterminals[symbol(NonterminalName)].RuleRange; in ruleFor()43 return G.table().Nonterminals[symbol(NonterminalName)].RuleRange.Start; in ruleFor()
75 void buildGrammar(std::vector<std::string> Nonterminals, in buildGrammar() argument77 Nonterminals.push_back("_"); in buildGrammar()78 llvm::sort(Nonterminals); in buildGrammar()79 Nonterminals.erase(std::unique(Nonterminals.begin(), Nonterminals.end()), in buildGrammar()80 Nonterminals.end()); in buildGrammar()82 for (const auto &NT : Nonterminals) in buildGrammar()92 for (SymbolID ID = 0; ID < TestLang.G.table().Nonterminals.size(); ++ID) in id()93 if (TestLang.G.table().Nonterminals[ID].Name == Name) in id()109 TestLang.G.table().Nonterminals[id(NonterminalName)].RuleRange; in ruleFor()112 .Nonterminals[id(NonterminalName)] in ruleFor()
40 for (SymbolID ID = 0; ID < G.table().Nonterminals.size(); ++ID) in id()41 if (G.table().Nonterminals[ID].Name == Name) in id()48 auto RuleRange = G.table().Nonterminals[id(NonterminalName)].RuleRange; in ruleFor()50 return G.table().Nonterminals[id(NonterminalName)].RuleRange.Start; in ruleFor()
93 for (clang::pseudo::SymbolID ID = 0; ID < G.table().Nonterminals.size(); in main()
236 std::vector<Nonterminal> Nonterminals; member
146 NumNonterminals = G.table().Nonterminals.size(); in Builder()