001package gudusoft.gsqlparser.nodes.functions; 002 003import gudusoft.gsqlparser.ESqlClause; 004import gudusoft.gsqlparser.TCustomSqlStatement; 005import gudusoft.gsqlparser.nodes.*; 006 007import java.util.ArrayList; 008 009 010/** 011 * TeraData UnPack function 012 */ 013public class TUnPackFunction extends TTableFunction { 014 015 private TFromTable tableRef; 016 private ArrayList<TUnpackOption> unpackOptions; 017 018 private TTable table; 019 020 public TTable getTable() { 021 return table; 022 } 023 024 public TFromTable getTableRef() { 025 return tableRef; 026 } 027 028 public ArrayList<TUnpackOption> getUnpackOptions() { 029 return unpackOptions; 030 } 031 032 public void init(Object arg1, Object arg2,Object arg3){ 033 functionName = (TObjectName)arg1; 034 tableRef = (TFromTable)arg2; 035 unpackOptions = (ArrayList<TUnpackOption>)arg3; 036 } 037 038 public void doParse(TCustomSqlStatement psql, ESqlClause plocation){ 039 super.doParse(psql,plocation); 040 table = psql.analyzeFromTable(tableRef,true); 041 } 042 043 public void accept(TParseTreeVisitor v){ 044 v.preVisit(this); 045 v.postVisit(this); 046 } 047 048 public void acceptChildren(TParseTreeVisitor v) { 049 v.preVisit(this); 050 v.postVisit(this); 051 } 052}