MCPcopy Create free account
hub / github.com/bytedance/bolt / getFunctionSignatureMap

Method getFunctionSignatureMap

bolt/expression/SimpleFunctionRegistry.cpp:73–96  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

71} // namespace
72
73std::unordered_map<
74 std::string,
75 std::vector<std::shared_ptr<const FunctionSignature>>>
76SimpleFunctionRegistry::getFunctionSignatureMap() const {
77 std::unordered_map<
78 std::string,
79 std::vector<std::shared_ptr<const FunctionSignature>>>
80 result;
81 registeredFunctions_.withRLock([&](const auto& map) {
82 result.reserve(map.size());
83
84 for (const auto& entry : map) {
85 std::vector<std::shared_ptr<const FunctionSignature>> signatures;
86 const auto signatureMap = &entry.second;
87 signatures.reserve(signatureMap->size());
88 for (const auto& pair : *signatureMap) {
89 signatures.emplace_back(
90 std::make_shared<const FunctionSignature>(pair.first));
91 }
92 result[entry.first] = signatures;
93 }
94 });
95 return result;
96}
97
98std::vector<std::shared_ptr<const FunctionSignature>>
99SimpleFunctionRegistry::getFunctionSignatures(const std::string& name) const {

Callers 1

getFunctionSignaturesFunction · 0.80

Calls 2

reserveMethod · 0.45
sizeMethod · 0.45

Tested by

no test coverage detected