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

foundation.jpa.querydsl.parsers.order.StateAdditiveExpressionOfAny88 Maven / Gradle / Ivy

package foundation.jpa.querydsl.parsers.order;

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 StateAdditiveExpressionOfAny88 extends StackState, StackState, ? extends State>>> {

// NoStack:
// Stack:
    public StateAdditiveExpressionOfAny88(foundation.jpa.querydsl.parsers.OrderRules factory, com.querydsl.core.types.Expression node, StackState, ? extends State>> prev) {
        super(factory, node, prev);
    }


// Reduce:
    @Override
    public State visitRPar(foundation.rpg.common.symbols.RPar symbol) throws UnexpectedInputException {
        StackState, ? extends State>> stack1 = this.getPrev();
		StackState, ? extends State> stack2 = stack1.getPrev();
		State stack3 = stack2.getPrev();
        return stack3.visitRelationalExpressionOfAny(getFactory().is(stack2.getNode(), stack1.getNode(), this.getNode())).visitRPar(symbol);
    }

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

    @Override
    public State visitAnd(foundation.rpg.common.symbols.And symbol) throws UnexpectedInputException {
        StackState, ? extends State>> stack1 = this.getPrev();
		StackState, ? extends State> stack2 = stack1.getPrev();
		State stack3 = stack2.getPrev();
        return stack3.visitRelationalExpressionOfAny(getFactory().is(stack2.getNode(), stack1.getNode(), this.getNode())).visitAnd(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.visitRelationalExpressionOfAny(getFactory().is(stack2.getNode(), stack1.getNode(), this.getNode())).visitComma(symbol);
    }


// Shift:
    @Override
    public State visitPlus(foundation.rpg.common.symbols.Plus symbol) {
        return new StatePlus27(getFactory(), symbol, this);
    }

    @Override
    public State visitMinus(foundation.rpg.common.symbols.Minus symbol) {
        return new StateMinus204(getFactory(), symbol, this);
    }


// 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());
    }

}