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.TFunctionCall}. */
005public class TFunctionCall extends TParseTreeNode {
006    private final Object vgetArgs;
007    private final Object vgetFilterClause;
008    private final Object vgetFunctionName;
009    private final Object vgetTrimArgument;
010    private final Object vgetWindowDef;
011    private final Object vgetWithinGroup;
012
013    TFunctionCall(Shape shape, int handle, Object[][] v) {
014        super(shape, handle, v);
015        Object[] mine = v[1];
016        this.vgetArgs = mine[0];
017        this.vgetFilterClause = mine[1];
018        this.vgetFunctionName = mine[2];
019        this.vgetTrimArgument = mine[3];
020        this.vgetWindowDef = mine[4];
021        this.vgetWithinGroup = mine[5];
022    }
023
024    public TExpressionList getArgs() {
025        return this.<TExpressionList>slot(vgetArgs);
026    }
027
028    public TExpression getFilterClause() {
029        return this.<TExpression>slot(vgetFilterClause);
030    }
031
032    public TObjectName getFunctionName() {
033        return this.<TObjectName>slot(vgetFunctionName);
034    }
035
036    public TTrimArgument getTrimArgument() {
037        return this.<TTrimArgument>slot(vgetTrimArgument);
038    }
039
040    public TWindowDef getWindowDef() {
041        return this.<TWindowDef>slot(vgetWindowDef);
042    }
043
044    public TWithinGroup getWithinGroup() {
045        return this.<TWithinGroup>slot(vgetWithinGroup);
046    }
047}