001package gudusoft.gsqlparser.nodes; 002 003import gudusoft.gsqlparser.ESqlClause; 004import gudusoft.gsqlparser.TCustomSqlStatement; 005 006public class TContainsTable extends TParseTreeNode { 007 public final static int containstable = 1; 008 public final static int freetexttable = 2; 009 010 private int type = containstable; 011 012 public void setType(int type) { 013 this.type = type; 014 } 015 016 public int getType() { 017 018 return type; 019 } 020 021 private TObjectName tableName = null; 022 private TInExpr column_or_columnList = null; 023 private TExpression contains_search_condition = null; 024 private TConstant top_n_by_rank = null; 025 private TExpression columnReferences = null; 026 027 public TExpression getColumnReferences() { 028 return columnReferences; 029 } 030 031 /** 032 * @deprecated As of v1.6.4.9, replaced by {@link #getColumnReferences} 033 * @return column reference 034 */ 035 public TInExpr getColumn_or_columnList() { 036 return column_or_columnList; 037 } 038 039 public TExpression getContains_search_condition() { 040 return contains_search_condition; 041 } 042 043 public TObjectName getTableName() { 044 return tableName; 045 } 046 047 public void init(Object arg1,Object arg2,Object arg3){ 048 tableName = (TObjectName)arg1; 049 //column_or_columnList = (TInExpr)arg2; 050 columnReferences = (TExpression)arg2; 051 052 contains_search_condition = (TExpression)arg3; 053 } 054 055 public void doParse(TCustomSqlStatement psql, ESqlClause plocation){ 056 //todo , table and columns here must be add to tables of psql later 057 //column_or_columnList.doParse(psql,plocation); 058 columnReferences.doParse(psql,plocation); 059 contains_search_condition.doParse(psql,plocation); 060 } 061 062 public void accept(TParseTreeVisitor v){ 063 v.preVisit(this); 064 v.postVisit(this); 065 } 066 067 public void acceptChildren(TParseTreeVisitor v){ 068 v.preVisit(this); 069 columnReferences.acceptChildren(v); 070 contains_search_condition.acceptChildren(v); 071 v.postVisit(this); 072 } 073 074 public void setTableName(TObjectName tableName) { 075 this.tableName = tableName; 076 } 077 078 public void setColumn_or_columnList(TInExpr column_or_columnList) { 079 this.column_or_columnList = column_or_columnList; 080 } 081 082 public void setContains_search_condition(TExpression contains_search_condition) { 083 this.contains_search_condition = contains_search_condition; 084 } 085 086 public void setTop_n_by_rank(TConstant top_n_by_rank) { 087 this.top_n_by_rank = top_n_by_rank; 088 } 089 090 public void setColumnReferences(TExpression columnReferences) { 091 this.columnReferences = columnReferences; 092 } 093}