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.stmt.TLoopStmt}. */
005public class TLoopStmt extends TBlockSqlStatement {
006    private final Object vgetCondition;
007    private final Object vgetIndexName;
008    private final Object vgetRecordName;
009    private final Object vgetScalarVariables;
010    private final Object vgetSubquery;
011
012    TLoopStmt(Shape shape, int handle, Object[][] v) {
013        super(shape, handle, v);
014        Object[] mine = v[3];
015        this.vgetCondition = mine[0];
016        this.vgetIndexName = mine[1];
017        this.vgetRecordName = mine[2];
018        this.vgetScalarVariables = mine[3];
019        this.vgetSubquery = mine[4];
020    }
021
022    public TExpression getCondition() {
023        return this.<TExpression>slot(vgetCondition);
024    }
025
026    public TObjectName getIndexName() {
027        return this.<TObjectName>slot(vgetIndexName);
028    }
029
030    public TObjectName getRecordName() {
031        return this.<TObjectName>slot(vgetRecordName);
032    }
033
034    public TObjectNameList getScalarVariables() {
035        return this.<TObjectNameList>slot(vgetScalarVariables);
036    }
037
038    public TSelectSqlStatement getSubquery() {
039        return this.<TSelectSqlStatement>slot(vgetSubquery);
040    }
041}