コード例 #1
0
ファイル: MetaDomain.cs プロジェクト: davidnemeti/Sarcasm
        public void RegisterGrammar(MetaGrammar metaGrammar)
        {
            if (metaGrammars.Any(_metaGrammar => _metaGrammar.GrammarType == metaGrammar.GrammarType))
                throw new ArgumentException("Grammar already registered " + metaGrammar.Name, "metaGrammar");

            metaGrammars.Add(metaGrammar);
        }
コード例 #2
0
ファイル: MetaRepository.cs プロジェクト: davidnemeti/Sarcasm
 public void RegisterGrammar(MetaGrammar metaGrammar)
 {
     if (metaGrammar.IsUniversalGrammar())
         RegisterUniversalGrammar(metaGrammar);
     else
         DomainTypeToMetaDomain(metaGrammar.DomainType).RegisterGrammar(metaGrammar);
 }
コード例 #3
0
ファイル: MetaRepository.cs プロジェクト: davidnemeti/Sarcasm
        private void RegisterUniversalGrammar(MetaGrammar metaGrammar)
        {
            if (universalMetaGrammars.Any(_metaGrammar => _metaGrammar.GrammarType == metaGrammar.GrammarType))
                throw new ArgumentException("Grammar already registered " + metaGrammar.Name, "metaGrammar");

            universalMetaGrammars.Add(metaGrammar);
        }