예제 #1
0
파일: Grammar.cs 프로젝트: hozuki/irony-vs
        private IEnumerable <Terminal> SymbolsToTerms(IEnumerable <string> symbols)
        {
            var termList = new TerminalList();

            termList.AddRange(symbols.Select(ToTerm));
            return(termList);
        }
        private IEnumerable <Terminal> SymbolsToTerms(IEnumerable <string> symbols)
        {
            var termList = new TerminalList();

            foreach (var symbol in symbols)
            {
                termList.Add(ToTerm(symbol));
            }
            return(termList);
        }
예제 #3
0
 private void AddTerminalToLookupByFirstChar(TerminalLookupTable lookup, Terminal term, char firstChar)
 {
     if (!lookup.TryGetValue(firstChar, out TerminalList currentList))
     {
         //if list does not exist yet, create it
         currentList       = new TerminalList();
         lookup[firstChar] = currentList;
     }
     //add terminal to the list
     if (!currentList.Contains(term))
     {
         currentList.Add(term);
     }
 }