예제 #1
0
        // <Expression> ::= <Term> { "|" <Term> } .
        private void ParseExpression()
        {
            ParseAction();

            _astBuilder.BeginExpression(_scanner.CurrentToken);

            ParseTerm();

            while (_scanner.CurrentToken.TokenKind == TokenKind.Or)
            {
                _scanner.Advance();
                ParseTerm();
            }

            ParseAction();

            _astBuilder.EndExpression();
        }