MCPcopy Create free account
hub / github.com/FirebirdSQL/firebird / makeBlobAppend

Function makeBlobAppend

src/jrd/SysFunction.cpp:1310–1337  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1308
1309
1310void makeBlobAppend(DataTypeUtilBase* dataTypeUtil, const SysFunction* function, dsc* result,
1311 int argsCount, const dsc** args)
1312{
1313 fb_assert(argsCount >= function->minArgCount);
1314
1315 result->makeBlob(isc_blob_untyped, ttype_binary);
1316 result->setNullable(true);
1317
1318 if (argsCount > 0)
1319 {
1320 for (int i = 0; i < argsCount; ++i)
1321 {
1322 if (makeBlobAppendBlob(result, args[i]))
1323 break;
1324 }
1325
1326 result->setNullable(true);
1327
1328 for (int i = 0; i < argsCount; ++i)
1329 {
1330 if (!args[i]->isNullable())
1331 {
1332 result->setNullable(false);
1333 break;
1334 }
1335 }
1336 }
1337}
1338
1339
1340void makeCeilFloor(DataTypeUtilBase*, const SysFunction* function, dsc* result,

Callers

nothing calls this directly

Calls 4

makeBlobAppendBlobFunction · 0.85
makeBlobMethod · 0.80
setNullableMethod · 0.80
isNullableMethod · 0.45

Tested by

no test coverage detected