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

Function makeEncodeHex

src/jrd/SysFunction.cpp:1575–1592  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1573
1574
1575void makeEncodeHex(DataTypeUtilBase* dataTypeUtil, const SysFunction* function, dsc* result, int argsCount, const dsc** args)
1576{
1577 fb_assert(argsCount == 1);
1578 if (args[0]->isBlob())
1579 result->makeBlob(isc_blob_text, ttype_ascii);
1580 else if (args[0]->isText())
1581 {
1582 unsigned len = args[0]->getStringLength() * 2;
1583 if (len <= MAX_VARY_COLUMN_SIZE)
1584 result->makeVarying(len, ttype_ascii);
1585 else
1586 result->makeBlob(isc_blob_text, ttype_ascii);
1587 }
1588 else
1589 status_exception::raise(Arg::Gds(isc_tom_strblob));
1590
1591 result->setNullable(args[0]->isNullable());
1592}
1593
1594
1595void makeCrypt(DataTypeUtilBase* dataTypeUtil, const SysFunction* function, dsc* result,

Callers

nothing calls this directly

Calls 9

raiseFunction · 0.85
GdsClass · 0.85
isBlobMethod · 0.80
makeBlobMethod · 0.80
isTextMethod · 0.80
getStringLengthMethod · 0.80
makeVaryingMethod · 0.80
setNullableMethod · 0.80
isNullableMethod · 0.45

Tested by

no test coverage detected