MCPcopy Create free account
hub / github.com/Vector35/binaryninja-api / DemangleTemplateParams

Method DemangleTemplateParams

demangler/msvc/demangle_msvc.cpp:992–1016  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

990
991
992string Demangle::DemangleTemplateParams(vector<FunctionParameter>& params, BackrefList& nameBackrefList, string& out)
993{
994 m_logger->Indent();
995 DemangleVariableList(params, nameBackrefList);
996 m_logger->Dedent();
997 m_logger->LogDebug("VariableList done\n");
998 out += "<";
999 for (size_t i = 0; i < params.size(); i++)
1000 {
1001 if (i == 0)
1002 {
1003 out += params[i].type->GetString();
1004 }
1005 else
1006 {
1007 out += "," + params[i].type->GetString();
1008 }
1009 }
1010 if (out[out.size()-1] == '>')
1011 out += " "; //Be c++03 compliant where we can
1012 out += ">";
1013
1014 nameBackrefList.PushStringBackref(out);
1015 return out;
1016}
1017
1018// void Demangle::DemangleInitFiniStub(bool destructor, QualifiedName& nameList, BackrefList& nameBackrefList, BNNameType& classFunctionType)
1019// {

Callers

nothing calls this directly

Calls 6

IndentMethod · 0.80
DedentMethod · 0.80
LogDebugMethod · 0.80
PushStringBackrefMethod · 0.80
sizeMethod · 0.45
GetStringMethod · 0.45

Tested by

no test coverage detected