All Downloads are FREE. Search and download functionalities are using the official Maven repository.

foundation.jpa.querydsl.groupby.StateIdentifier3 Maven / Gradle / Ivy

There is a newer version: 0.29
Show newest version
package foundation.jpa.querydsl.groupby;

import foundation.rpg.parser.UnexpectedInputException;
import foundation.rpg.parser.Named;

import java.util.Arrays;
import java.util.List;

// Generated visitor pattern based state for grammar parser.
public class StateIdentifier3 extends StackState, ? extends State>>> {

// NoStack:
// Stack:
    public StateIdentifier3(foundation.jpa.querydsl.groupby.GroupByFactory factory, foundation.rpg.common.symbols.Identifier node, StackState, ? extends State>> prev) {
        super(factory, node, prev);
    }


// Reduce:
    @Override
    public State visitEnd(foundation.rpg.parser.End symbol) throws UnexpectedInputException {
        StackState, ? extends State>> stack1 = this.getPrev();
		StackState, ? extends State> stack2 = stack1.getPrev();
		State stack3 = stack2.getPrev();
        return stack3.visitExpressionOfAny(getFactory().is(stack2.getNode(), stack1.getNode(), this.getNode())).visitEnd(symbol);
    }

    @Override
    public State visitDot(foundation.rpg.common.symbols.Dot symbol) throws UnexpectedInputException {
        StackState, ? extends State>> stack1 = this.getPrev();
		StackState, ? extends State> stack2 = stack1.getPrev();
		State stack3 = stack2.getPrev();
        return stack3.visitExpressionOfAny(getFactory().is(stack2.getNode(), stack1.getNode(), this.getNode())).visitDot(symbol);
    }

    @Override
    public State visitComma(foundation.rpg.common.symbols.Comma symbol) throws UnexpectedInputException {
        StackState, ? extends State>> stack1 = this.getPrev();
		StackState, ? extends State> stack2 = stack1.getPrev();
		State stack3 = stack2.getPrev();
        return stack3.visitExpressionOfAny(getFactory().is(stack2.getNode(), stack1.getNode(), this.getNode())).visitComma(symbol);
    }


// Shift:
// Accept:
    @Override
    public List stack() {
        StackState, ? extends State>> stack1 = this.getPrev();
		StackState, ? extends State> stack2 = stack1.getPrev();
		State stack3 = stack2.getPrev();
        return Arrays.asList(stack2.getNode(), stack1.getNode(), this.getNode());
    }

}