Esempio n. 1
0
        public static BaseSymbol CreateExpression(int tokenType, BaseSymbol firstExpression, BaseSymbol secondExpression)
        {
            List <BaseSymbol> declarations = new List <BaseSymbol>()
            {
                firstExpression, secondExpression
            };

            NonTermType nonTermType = GrammarHelper.TokenTypeToNonTermDictionary.ContainsKey(tokenType) ?
                                      GrammarHelper.TokenTypeToNonTermDictionary[tokenType] : NonTermType.None;

            return(new NonTerm(nonTermType, declarations));
        }
Esempio n. 2
0
        public static BaseSymbol CreateEqualityExpression(int tokenType, List <BaseSymbol> expressions)
        {
            BaseSymbol symbol = null;

            if (expressions.Count == 1)
            {
                symbol = expressions.First();
            }
            else
            {
                NonTermType nonTermType = GrammarHelper.TokenTypeToNonTermDictionary.ContainsKey(tokenType) ?
                                          GrammarHelper.TokenTypeToNonTermDictionary[tokenType] : NonTermType.None;
                symbol = new NonTerm(nonTermType, expressions);
            }
            return(symbol);
        }
Esempio n. 3
0
 public StatementDecl(NonTermType nonTermType)
     : base(nonTermType)
 {
 }
Esempio n. 4
0
 public NonTerm(NonTermType nonTermType)
     : base(string.Empty, new List <BaseSymbol>())
 {
     TypeNonTerm = nonTermType;
 }
Esempio n. 5
0
 public NonTerm(NonTermType nonTermType, BaseSymbol symbol) :
     base(string.Empty, new List <BaseSymbol>() { symbol })
 {
     TypeNonTerm = nonTermType;
 }
Esempio n. 6
0
 public NonTerm(NonTermType nonTermType, List <BaseSymbol> symbols)
     : base(string.Empty, symbols)
 {
     TypeNonTerm = nonTermType;
 }