C# (CSharp) Loyc.LLParserGenerator Namespace

Classes

Name Description
AntlrStyleParser
AutoValueSaverVisitor Helper class invoked just after StageTwoParser. Its job is to create variables referenced by labels (label:item) and by code blocks ($RuleName), to modify the code blocks to remove the $ operator, and to update the ResultSaver of each labeled predicate. Also supports $result.
AutoValueSaverVisitor.DataGatheringVisitor
CodeGenHelperBase Suggested base class for custom code generators. Each derived class is typically designed for a different kind of token.
IntSetTests
LLParserGenerator.GenerateCodeVisitor Directs code generation using the visitor pattern to visit the predicates in a rule. The process starts with Generate(Rule).
LLParserGenerator.PredictionAnalysisVisitor Performs prediction analysis using the visitor pattern to visit the predicates in a rule. The process starts with Analyze(Rule).
LLParserGenerator.PrematchAnalysisVisitor Figures out which terminals and and-predicates are "prematched". A prematched "Match()" call can be replaced with "Skip()" or "MatchAny()" in the generated code, a prematched Check() can be eliminated, to improve performance of the generated code.
LLParserGenerator.PrematchAnalysisVisitor.ApplyPrematchVisitor
LLParserGenerator.PrematchAnalysisVisitor.Prematched
LlpgAutoValueSaverVisitorTests
LlpgBugsAndSlugs Tests for known slugs (slowness bugs) and fixed bugs (regressions)
LlpgCoreTests
LlpgGeneralTests
LlpgGeneralTestsBase
LlpgGeneralTestsBase.TestCompiler
LlpgHelpers Helper methods for making LLLPG grammar nodes. Used by LlpgCoreTests.
LlpgParserTests
LlpgTestLargerExamples
Program Entry point of LLLPG.exe, with QuickRun() method to help invoke LLLPG programmatically.
Rule Represents an LLLPG rule, which is a Predicate plus a Name and optional attributes (e.g. token, private, etc.).
StageOneParser
StageTwoParser Parses LNodes such as (x | ("foo", y)) / z into Pred objects.