001// GENERATED by ShapeGenerator from scripts/sqllr/shape/shape-spec.tsv (plan 09, slice 1b). Do not edit.
002package gudusoft.gsqlparser.lineage.v2.shape;
003
004/** Mirror of {@code gudusoft.gsqlparser.nodes.TGroupBy}. */
005public class TGroupBy extends TParseTreeNode {
006    private final Object vgetGROUP;
007    private final Object vgetHAVING;
008    private final Object vgetHavingClause;
009    private final Object vgetItems;
010
011    TGroupBy(Shape shape, int handle, Object[][] v) {
012        super(shape, handle, v);
013        Object[] mine = v[1];
014        this.vgetGROUP = mine[0];
015        this.vgetHAVING = mine[1];
016        this.vgetHavingClause = mine[2];
017        this.vgetItems = mine[3];
018    }
019
020    public TSourceToken getGROUP() {
021        return this.<TSourceToken>slot(vgetGROUP);
022    }
023
024    public TSourceToken getHAVING() {
025        return this.<TSourceToken>slot(vgetHAVING);
026    }
027
028    public TExpression getHavingClause() {
029        return this.<TExpression>slot(vgetHavingClause);
030    }
031
032    public TGroupByItemList getItems() {
033        return this.<TGroupByItemList>slot(vgetItems);
034    }
035}