IEnumerable<ProductionModel> Rule(EbnfRule rule)
 {
     var nonTerminal = GetNonTerminalFromQualifiedIdentifier(rule.QualifiedIdentifier);
     var productionModel = new ProductionModel(nonTerminal);
     foreach(var production in Expression(rule.Expression, productionModel))
         yield return production;
     yield return productionModel;
 }
Exemple #2
0
 public EbnfBlockRule(EbnfRule rule)
 {
     Rule = rule;
     _hashCode = ComputeHashCode();
 }