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.TCustomSqlStatement}. */
005public class TCustomSqlStatement extends TParseTreeNode {
006    public final gudusoft.gsqlparser.ESqlStatementType sqlstatementtype;
007    public final TTableList tables;
008    private final Object vgetCteList;
009    private final Object vgetErrorCount;
010    private final Object vgetJoins;
011    private final Object vgetLabelName;
012    private final Object vgetOutputClause;
013    private final Object vgetParentStmt;
014    private final Object vgetResultColumnList;
015    private final Object vgetReturningClause;
016    private final Object vgetStatements;
017    private final Object vgetTargetTable;
018    private final Object vgetTopClause;
019    private final Object vgetWhereClause;
020
021    TCustomSqlStatement(Shape shape, int handle, Object[][] v) {
022        super(shape, handle, v);
023        Object[] mine = v[1];
024        this.sqlstatementtype = shape.<gudusoft.gsqlparser.ESqlStatementType>resolve(mine[0]);
025        this.tables = shape.<TTableList>resolve(mine[1]);
026        this.vgetCteList = mine[2];
027        this.vgetErrorCount = mine[3];
028        this.vgetJoins = mine[4];
029        this.vgetLabelName = mine[5];
030        this.vgetOutputClause = mine[6];
031        this.vgetParentStmt = mine[7];
032        this.vgetResultColumnList = mine[8];
033        this.vgetReturningClause = mine[9];
034        this.vgetStatements = mine[10];
035        this.vgetTargetTable = mine[11];
036        this.vgetTopClause = mine[12];
037        this.vgetWhereClause = mine[13];
038    }
039
040    public TCTEList getCteList() {
041        return this.<TCTEList>slot(vgetCteList);
042    }
043
044    public int getErrorCount() {
045        return this.<Integer>slot(vgetErrorCount);
046    }
047
048    public TJoinList getJoins() {
049        return this.<TJoinList>slot(vgetJoins);
050    }
051
052    public TObjectName getLabelName() {
053        return this.<TObjectName>slot(vgetLabelName);
054    }
055
056    public TOutputClause getOutputClause() {
057        return this.<TOutputClause>slot(vgetOutputClause);
058    }
059
060    public TCustomSqlStatement getParentStmt() {
061        return this.<TCustomSqlStatement>slot(vgetParentStmt);
062    }
063
064    public TResultColumnList getResultColumnList() {
065        return this.<TResultColumnList>slot(vgetResultColumnList);
066    }
067
068    public TReturningClause getReturningClause() {
069        return this.<TReturningClause>slot(vgetReturningClause);
070    }
071
072    public TStatementList getStatements() {
073        return this.<TStatementList>slot(vgetStatements);
074    }
075
076    public TTable getTargetTable() {
077        return this.<TTable>slot(vgetTargetTable);
078    }
079
080    public TTopClause getTopClause() {
081        return this.<TTopClause>slot(vgetTopClause);
082    }
083
084    public TWhereClause getWhereClause() {
085        return this.<TWhereClause>slot(vgetWhereClause);
086    }
087}