14 using System.Collections.Generic;
17 using System.Diagnostics;
19 namespace Irony.
Parsing.Construction {
20 internal class LanguageDataBuilder {
22 internal LanguageData Language;
25 public LanguageDataBuilder(LanguageData language) {
27 _grammar = Language.Grammar;
31 var sw =
new Stopwatch();
33 if (_grammar.Root == null)
36 var gbld =
new GrammarDataBuilder(Language);
39 _grammar.OnGrammarDataConstructed(Language);
40 var pbld =
new ParserDataBuilder(Language);
44 _grammar.OnLanguageDataConstructed(Language);
46 }
catch (GrammarErrorException) {
49 Language.ErrorLevel = Language.Errors.GetMaxLevel();
51 Language.ConstructionTime = sw.ElapsedMilliseconds;
56 #region Language Data Validation
57 private void Validate() {
static string ErrRootNotSet
Looks up a localized string similar to Root property of the grammar is not set..