001package gudusoft.gsqlparser.nodes.functions; 002 003import gudusoft.gsqlparser.EFunctionType; 004import gudusoft.gsqlparser.ESqlClause; 005import gudusoft.gsqlparser.TCustomSqlStatement; 006import gudusoft.gsqlparser.nodes.TFunctionCall; 007import gudusoft.gsqlparser.nodes.TJsonObjectKeyValue; 008import gudusoft.gsqlparser.nodes.TObjectName; 009import gudusoft.gsqlparser.nodes.TParseTreeVisitor; 010 011import java.util.ArrayList; 012 013public class TJsonObjectFunction extends TFunctionCall { 014 015 private ArrayList<TJsonObjectKeyValue> keyValues; 016 017 public ArrayList<TJsonObjectKeyValue> getKeyValues() { 018 return keyValues; 019 } 020 021 public void init(Object arg1, Object arg2){ 022 this.setFunctionName((TObjectName)arg1 ); 023 this.keyValues = (ArrayList<TJsonObjectKeyValue>)arg2; 024 this.setFunctionType(EFunctionType.json_object_t); 025 } 026 027 public void doParse(TCustomSqlStatement psql, ESqlClause plocation){ 028 for(int i=0;i<keyValues.size();i++){ 029 keyValues.get(i).getValue().doParse(psql,plocation); 030 } 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}