src/main/java/ca/gobits/bnf/parser/BNFParserImpl.java
private BNFToken processMatch() {

        this.stack.pop();

        BNFToken token = this.stack.peek().getCurrentToken();

        debugPrintIndents();
        LOGGER.finer("-> matched token " + token.getStringValue() + " rewind to next symbol");

        rewindToNextSymbolOrRepetition();

        if (!this.stack.isEmpty()) {
            BNFParserState holder = this.stack.peek();

            token = token.getNextToken();
            holder.advanceToken(token);
        }

        return token;
    }
/**
     * Rewind stack to next symbol.
     * @return BNFToken
     */
Rewind stack to next symbol.
Rewind stack to next symbol .
private BNFToken processMatch() {
        this.stack.pop();
        BNFToken token = this.stack.peek().getCurrentToken();
        debugPrintIndents();
        LOGGER.finer("-> matched token " + token.getStringValue() + " rewind to next symbol");
        rewindToNextSymbolOrRepetition();
        if (!this.stack.isEmpty()) {
            BNFParserState holder = this.stack.peek();
            token = token.getNextToken();
            holder.advanceToken(token);
        }
        return token;
    }
private BNFToken processMatch ( ) { this . stack . pop ( ) ; BNFToken token = this . stack . peek ( ) . getCurrentToken ( ) ; debugPrintIndents ( ) ; LOGGER . finer ( "-> matched token " + token . getStringValue ( ) + " rewind to next symbol" ) ; rewindToNextSymbolOrRepetition ( ) ; if ( ! this . stack . isEmpty ( ) ) { BNFParserState holder = this . stack . peek ( ) ; token = token . getNextToken ( ) ; holder . advanceToken ( token ) ; } return token ; }
Rewind stack to next symbol.
Rewind stack to next symbol .