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.TParameterDeclaration}. */
005public class TParameterDeclaration extends TParseTreeNode {
006    private final Object vgetDataType;
007    private final Object vgetDefaultValue;
008    private final Object vgetParameterMode;
009    private final Object vgetParameterName;
010
011    TParameterDeclaration(Shape shape, int handle, Object[][] v) {
012        super(shape, handle, v);
013        Object[] mine = v[1];
014        this.vgetDataType = mine[0];
015        this.vgetDefaultValue = mine[1];
016        this.vgetParameterMode = mine[2];
017        this.vgetParameterName = mine[3];
018    }
019
020    public TTypeName getDataType() {
021        return this.<TTypeName>slot(vgetDataType);
022    }
023
024    public TExpression getDefaultValue() {
025        return this.<TExpression>slot(vgetDefaultValue);
026    }
027
028    public gudusoft.gsqlparser.EParameterMode getParameterMode() {
029        return this.<gudusoft.gsqlparser.EParameterMode>slot(vgetParameterMode);
030    }
031
032    public TObjectName getParameterName() {
033        return this.<TObjectName>slot(vgetParameterName);
034    }
035}