コード例 #1
0
        private SyntaxNode ReadParenthesizedExpression()
        {
            tokens.AssertCanRead();
            tokens.AssertNextIsTypeOf(TokenType.LeftParentheses);

            SyntaxNode expression = ReadExpression();

            tokens.AssertCanRead();
            tokens.AssertNextIsTypeOf(TokenType.RightParentheses);

            return(new ParenthesesNode(expression));
        }
コード例 #2
0
        public void AssertNextIsTypeOf_AdditionToken_ThrowsException()
        {
            Tokens tokens = new Tokens(new List <Token> {
                new Token(TokenType.Addition)
            });

            Assert.Throws <UnexpectedTokenException>(() => tokens.AssertNextIsTypeOf(TokenType.Subtraction));
        }