001package gudusoft.gsqlparser.stmt;
002
003import gudusoft.gsqlparser.EDbVendor;
004import gudusoft.gsqlparser.ESqlStatementType;
005import gudusoft.gsqlparser.TCustomSqlStatement;
006import gudusoft.gsqlparser.nodes.TLeaveSqlNode;
007import gudusoft.gsqlparser.nodes.TObjectName;
008import gudusoft.gsqlparser.nodes.TParseTreeVisitor;
009
010public class TLeaveStmt extends TCustomSqlStatement {
011
012    private TObjectName cursorName;
013
014    public TObjectName getCursorName() {
015        return cursorName;
016    }
017
018    public TLeaveStmt(EDbVendor dbvendor) {
019        super(dbvendor);
020        sqlstatementtype = ESqlStatementType.sstLeave;
021    }
022
023    public int doParseStatement(TCustomSqlStatement psql) {
024        if (rootNode == null) return -1;
025        super.doParseStatement(psql);
026        TLeaveSqlNode node = (TLeaveSqlNode)rootNode;
027        cursorName = node.getCursorName();
028        return 0;
029    }
030
031    public void accept(TParseTreeVisitor v){
032        v.preVisit(this);
033        v.postVisit(this);
034    }
035
036    public void acceptChildren(TParseTreeVisitor v){
037        v.preVisit(this);
038        v.postVisit(this);
039    }
040
041}