Ejemplo n.º 1
0
        public void TerminalLexemeResetShouldClearPreExistingValues()
        {
            var terminalLexeme = new TerminalLexeme(
                new CharacterTerminal('c'),
                new TokenType("c"),
                0);

            Assert.IsTrue(terminalLexeme.Scan('c'));
            terminalLexeme.Reset(
                new TerminalLexerRule(new CharacterTerminal('a'), new TokenType("a")),
                10);

            Assert.AreEqual(10, terminalLexeme.Position);
        }
Ejemplo n.º 2
0
        public void TerminalLexemeResetShouldClearPreExistingValues()
        {
            var input          = "c";
            var segment        = input.AsCapture();
            var terminalLexeme = new TerminalLexeme(
                new CharacterTerminal('c'),
                new TokenType("c"),
                segment,
                0);

            Assert.IsTrue(terminalLexeme.Scan());
            terminalLexeme.Reset(
                new TerminalLexerRule(new CharacterTerminal('a'), new TokenType("a")),
                0);

            Assert.AreEqual(0, terminalLexeme.Position);
        }