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

Method lookupCharSet

src/jrd/IntlManager.cpp:613–639  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

611
612
613bool IntlManager::lookupCharSet(const string& charSetName, charset* cs)
614{
615 ExternalInfo externalInfo;
616
617 if (charSetCollations->get(charSetName + ":" + charSetName, externalInfo))
618 {
619 pfn_INTL_lookup_charset lookupFunction = NULL;
620
621 if (externalInfo.moduleName.isEmpty())
622 lookupFunction = INTL_builtin_lookup_charset;
623 else
624 {
625 ModuleLoader::Module* module;
626
627 if (modules->get(externalInfo.moduleName, module) && module)
628 module->findSymbol(NULL, STRINGIZE(CHARSET_ENTRYPOINT), lookupFunction);
629 }
630
631 if (lookupFunction && (*lookupFunction)(cs, externalInfo.name.c_str(),
632 externalInfo.configInfo.c_str()))
633 {
634 return validateCharSet(charSetName, cs);
635 }
636 }
637
638 return false;
639}
640
641
642void IntlManager::lookupCollation(const string& collationName,

Callers

nothing calls this directly

Calls 4

getMethod · 0.45
isEmptyMethod · 0.45
findSymbolMethod · 0.45
c_strMethod · 0.45

Tested by

no test coverage detected