001package gudusoft.gsqlparser.dlineage.dataflow.model; 002 003import gudusoft.gsqlparser.nodes.TFunctionCall; 004import gudusoft.gsqlparser.nodes.TTable; 005 006import java.util.List; 007 008/** 009 * Represents a call site where TABLE(pipelined_func(...)) was used but the 010 * function signature was not yet available at analysis time. These are 011 * resolved during the finalize phase. 012 */ 013public class PendingPipelinedCallSite { 014 private List<String> functionKeyCandidates; 015 private int argCount; 016 private TTable table; 017 private TFunctionCall callExpr; 018 019 public PendingPipelinedCallSite(List<String> functionKeyCandidates, int argCount, 020 TTable table, TFunctionCall callExpr) { 021 this.functionKeyCandidates = functionKeyCandidates; 022 this.argCount = argCount; 023 this.table = table; 024 this.callExpr = callExpr; 025 } 026 027 public List<String> getFunctionKeyCandidates() { 028 return functionKeyCandidates; 029 } 030 031 public int getArgCount() { 032 return argCount; 033 } 034 035 public TTable getTable() { 036 return table; 037 } 038 039 public TFunctionCall getCallExpr() { 040 return callExpr; 041 } 042 043 @Override 044 public String toString() { 045 return "PendingPipelinedCallSite{candidates=" + functionKeyCandidates + ", args=" + argCount + "}"; 046 } 047}