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.TColumnDefinition}. */
005public class TColumnDefinition extends TParseTreeNode {
006    private final Object vgetColumnGeneratedClause;
007    private final Object vgetColumnName;
008    private final Object vgetComputedColumnExpression;
009    private final Object vgetDatatype;
010    private final Object vgetDefaultExpression;
011    private final Object vgetIdentityClause;
012    private final Object visIdentity;
013
014    TColumnDefinition(Shape shape, int handle, Object[][] v) {
015        super(shape, handle, v);
016        Object[] mine = v[1];
017        this.vgetColumnGeneratedClause = mine[0];
018        this.vgetColumnName = mine[1];
019        this.vgetComputedColumnExpression = mine[2];
020        this.vgetDatatype = mine[3];
021        this.vgetDefaultExpression = mine[4];
022        this.vgetIdentityClause = mine[5];
023        this.visIdentity = mine[6];
024    }
025
026    public TColumnGeneratedClause getColumnGeneratedClause() {
027        return this.<TColumnGeneratedClause>slot(vgetColumnGeneratedClause);
028    }
029
030    public TObjectName getColumnName() {
031        return this.<TObjectName>slot(vgetColumnName);
032    }
033
034    public TExpression getComputedColumnExpression() {
035        return this.<TExpression>slot(vgetComputedColumnExpression);
036    }
037
038    public TTypeName getDatatype() {
039        return this.<TTypeName>slot(vgetDatatype);
040    }
041
042    public TExpression getDefaultExpression() {
043        return this.<TExpression>slot(vgetDefaultExpression);
044    }
045
046    public TIdentityClause getIdentityClause() {
047        return this.<TIdentityClause>slot(vgetIdentityClause);
048    }
049
050    public boolean isIdentity() {
051        return this.<Boolean>slot(visIdentity);
052    }
053}