MCPcopy Create free account
hub / github.com/apache/cloudberry / outNode

Function outNode

src/backend/nodes/outfuncs.c:4207–5403  ·  view source on GitHub ↗

* outNode - * converts a Node into ascii string and append it to 'str' */

Source from the content-addressed store, hash-verified

4205 * converts a Node into ascii string and append it to 'str'
4206 */
4207void
4208outNode(StringInfo str, const void *obj)
4209{
4210 /* Guard against stack overflow due to overly complex expressions */
4211 check_stack_depth();
4212
4213 if (obj == NULL)
4214 appendStringInfoString(str, "<>");
4215 else if (IsA(obj, List) || IsA(obj, IntList) || IsA(obj, OidList))
4216 _outList(str, obj);
4217 else if (IsA(obj, Integer) ||
4218 IsA(obj, Float) ||
4219 IsA(obj, String) ||
4220 IsA(obj, BitString))
4221 {
4222 /* nodeRead does not want to see { } around these! */
4223 _outValue(str, obj);
4224 }
4225 else
4226 {
4227 appendStringInfoChar(str, '{');
4228 switch (nodeTag(obj))
4229 {
4230 case T_PlannedStmt:
4231 _outPlannedStmt(str, obj);
4232 break;
4233 case T_QueryDispatchDesc:
4234 _outQueryDispatchDesc(str, obj);
4235 break;
4236 case T_SerializedParams:
4237 _outSerializedParams(str, obj);
4238 break;
4239 case T_OidAssignment:
4240 _outOidAssignment(str, obj);
4241 break;
4242 case T_Plan:
4243 _outPlan(str, obj);
4244 break;
4245 case T_Result:
4246 _outResult(str, obj);
4247 break;
4248 case T_ProjectSet:
4249 _outProjectSet(str, obj);
4250 break;
4251 case T_ModifyTable:
4252 _outModifyTable(str, obj);
4253 break;
4254 case T_Append:
4255 _outAppend(str, obj);
4256 break;
4257 case T_MergeAppend:
4258 _outMergeAppend(str, obj);
4259 break;
4260 case T_Sequence:
4261 _outSequence(str, obj);
4262 break;
4263 case T_RecursiveUnion:
4264 _outRecursiveUnion(str, obj);

Callers 2

_outListFunction · 0.85
nodeToStringFunction · 0.85

Calls 15

check_stack_depthFunction · 0.85
appendStringInfoStringFunction · 0.85
appendStringInfoCharFunction · 0.85
_outPlannedStmtFunction · 0.85
_outQueryDispatchDescFunction · 0.85
_outSerializedParamsFunction · 0.85
_outOidAssignmentFunction · 0.85
_outPlanFunction · 0.85
_outResultFunction · 0.85
_outProjectSetFunction · 0.85
_outModifyTableFunction · 0.85
_outAppendFunction · 0.85

Tested by

no test coverage detected