001package gudusoft.gsqlparser.nodes;
002
003import gudusoft.gsqlparser.TBaseType;
004
005/**
006 * Bind argument in using_clause of plsql execute_immediate_statement
007*/
008
009public class TBindArgument extends TParseTreeNode {
010    private int mode = TBaseType.parameter_mode_default;
011    private TExpression bindArgumentExpr = null;
012
013    public void setMode(int mode) {
014        this.mode = mode;
015    }
016
017    /**
018     *
019     * @return   Parameter modes of bind arguments. in, out, in out.
020     */
021    public int getMode() {
022        return mode;
023
024    }
025
026    /**
027     * 
028     * @return    Either an expression whose value is passed to the dynamic SQL statement (an in bind), or a variable in which a value returned by the dynamic SQL statement is stored.(an out bind).
029     */
030    public TExpression getBindArgumentExpr() {
031
032        return bindArgumentExpr;
033    }
034
035    public void init(Object arg1)
036    {
037      bindArgumentExpr = (TExpression)arg1;
038    }
039
040    public void setBindArgumentExpr(TExpression bindArgumentExpr) {
041        this.bindArgumentExpr = bindArgumentExpr;
042    }
043
044    public void accept(TParseTreeVisitor v){
045        v.preVisit(this);
046        v.postVisit(this);
047    }
048
049    public void acceptChildren(TParseTreeVisitor v){
050        v.preVisit(this);
051        v.postVisit(this);
052    }
053
054}