001package gudusoft.gsqlparser.stmt.hive;
002
003import gudusoft.gsqlparser.EDbVendor;
004import gudusoft.gsqlparser.ESqlClause;
005import gudusoft.gsqlparser.ESqlStatementType;
006import gudusoft.gsqlparser.TCustomSqlStatement;
007import gudusoft.gsqlparser.nodes.*;
008
009
010public class THiveSet extends TCustomSqlStatement {
011
012//    private TObjectName parameterName;
013//    private TExpression parameterValue;
014//
015//    public TObjectName getParameterName() {
016//        return parameterName;
017//    }
018//
019//    public TExpression getParameterValue() {
020//        return parameterValue;
021//    }
022
023    TExpression expr;
024    public THiveSet(EDbVendor dbvendor) {
025        super(dbvendor);
026        sqlstatementtype = ESqlStatementType.ssthiveSet;
027    }
028
029    public TExpression getExpr() {
030        return expr;
031    }
032
033    public int doParseStatement(TCustomSqlStatement psql) {
034        if (rootNode == null) return -1;
035        super.doParseStatement(psql);
036        TSetSqlNode node = (TSetSqlNode)rootNode;
037
038        //expr = node.getExprList().getExpression(0);
039//        parameterName = node.getAssignments().getElement(0).getParameterName();
040//        parameterValue = node.getAssignments().getElement(0).getParameterValue();
041//        parameterValue.doParse(this, ESqlClause.setVariable);
042        expr = node.getAssignments().getElement(0).getExpression();
043
044        return 0;
045    }
046
047    public void accept(TParseTreeVisitor v){
048        v.preVisit(this);
049        v.postVisit(this);
050    }
051
052    public void acceptChildren(TParseTreeVisitor v){
053        v.preVisit(this);
054        expr.accept(v);
055        v.postVisit(this);
056    }
057
058    public void setExpr(TExpression expr) {
059        this.expr = expr;
060    }
061}