001package gudusoft.gsqlparser.nodes.functions; 002 003import gudusoft.gsqlparser.*; 004import gudusoft.gsqlparser.TCustomSqlStatement; 005import gudusoft.gsqlparser.nodes.*; 006import gudusoft.gsqlparser.nodes.TParseTreeVisitor; 007 008/** 009 * Teradata json function such as json_agg, json_compose 010 * 011 */ 012public class TJsonFunction extends TFunctionCall { 013 014 private TResultColumnList jsonAggList; 015 016 public TResultColumnList getJsonAggList() { 017 return jsonAggList; 018 } 019 020 public void doParse(TCustomSqlStatement psql, ESqlClause plocation){ 021 super.doParse(psql, plocation); 022 jsonAggList.doParse(psql, plocation); 023 } 024 025 public void init(Object arg1, Object arg2){ 026 functionType = EFunctionType.json_agg_t; 027 this.setFunctionName((TObjectName) arg1); 028 jsonAggList = (TResultColumnList) arg2; 029 } 030 031 public void accept(TParseTreeVisitor v){ 032 v.preVisit(this); 033 v.postVisit(this); 034 } 035 036 public void acceptChildren(TParseTreeVisitor v){ 037 v.preVisit(this); 038 v.postVisit(this); 039 } 040 041}