001package gudusoft.gsqlparser.stmt.snowflake; 002 003import gudusoft.gsqlparser.EDbVendor; 004import gudusoft.gsqlparser.ESqlStatementType; 005import gudusoft.gsqlparser.TCustomSqlStatement; 006import gudusoft.gsqlparser.nodes.TExpression; 007import gudusoft.gsqlparser.nodes.TParseTreeVisitor; 008 009/** 010 * expression used in the create function body will be treated as a pseudo expression statement. 011 */ 012public class TPseudoExprStmt extends TCustomSqlStatement { 013 014 private TExpression expr; 015 016 public TExpression getExpr() { 017 return expr; 018 } 019 020 public TPseudoExprStmt(EDbVendor dbvendor) { 021 super(dbvendor); 022 sqlstatementtype = ESqlStatementType.sstSnowflakePseudoExprStmt; 023 } 024 025 public int doParseStatement(TCustomSqlStatement psql) { 026 if (rootNode == null) return -1; 027 super.doParseStatement(psql); 028 expr =(TExpression) rootNode; 029 030 return 0; 031 } 032 033 public void accept(TParseTreeVisitor v){ 034 v.preVisit(this); 035 v.postVisit(this); 036 } 037 038 public void acceptChildren(TParseTreeVisitor v){ 039 v.preVisit(this); 040 v.postVisit(this); 041 } 042 043}