data: lambda handling

* implemented handling lambdas as functions
* functions can have child nodes now
* NameElements in NameHierarchy can have signatures now.
* fixed crash that occurred when message listener was used while being half way through its destruction process.
This commit is contained in:
malte_langkabel
2015-12-10 18:00:54 +01:00
parent 2b03215ea4
commit 01bcf7266b
22 changed files with 238 additions and 568 deletions
+3 -7
View File
@@ -111,14 +111,10 @@ std::string ParserClient::parameterStr(const std::vector<ParseTypeUsage> paramet
std::string ParserClient::functionStr(const ParseFunction& function)
{
//return function.getFullName();
std::string str =
function.returnType.dataType->getFullTypeName() + " " + function.getFullName() + parameterStr(function.parameters);
return addConstPrefix(addStaticPrefix(str, function.isStatic), function.isConst, false);
}
std::string ParserClient::functionSignatureStr(const ParseFunction& function)
{
return addConstPrefix(function.getFullName() + parameterStr(function.parameters), function.isConst, false);
function.returnType.dataType->getFullTypeName() + " " + function.getFullName();
return addStaticPrefix(str, function.isStatic);
}
ParserClient::ParserClient()
+1 -1
View File
@@ -50,7 +50,7 @@ public:
static std::string variableStr(const ParseVariable& variable);
static std::string parameterStr(const std::vector<ParseTypeUsage> parameters);
static std::string functionStr(const ParseFunction& function);
static std::string functionSignatureStr(const ParseFunction& function);
static std::string functionSignatureStr(const ParseFunction& function); // should this be in here? consider languages other than c++.
ParserClient();
virtual ~ParserClient();