Пример #1
0
        public IExpression Parse(string expValue)
        {
            tokenParser = new TokenParser(expValue);
            IToken token = tokenParser.GetNextToken();

            IExpression expression = ParseExpression(ref token);

            if (!(token is EndToken))
            {
                throw new SyntaxErrorException("operador esperado.");
            }
            return(expression);
        }
Пример #2
0
        private IExpression ParseLogicalOrExpression(ref IToken token)
        {
            IExpression exp = ParseLogicalAndExpression(ref token);

            if (token is OuToken)
            {
                token = tokenParser.GetNextToken();
                return(new Expression.OrExpression(exp, ParseLogicalOrExpression(ref token)));
            }
            else
            {
                return(exp);
            }
        }