getFunctionSignature method

String getFunctionSignature()

Implementation

String getFunctionSignature()
{
    String returnTypeName = (T == _getType<void>()) ? "void" : _returnType.runtimeType.toString();
    String functionName = "";

    bool isRuntimeFunction = this._remoteFunctionIdentifier.hasRuntime();

    if(isRuntimeFunction)
    {
        functionName = this._remoteFunctionIdentifier.runtime.toString() + "::" + this._remoteFunctionIdentifier.functionName;
    }
    else
    {
        functionName = this._remoteFunctionIdentifier.moduleId + "::" + this._remoteFunctionIdentifier.functionName;
    }

    String parameterNames = this._parameterTypes.length > 0 ? this._parameterTypes[0].runtimeType.toString() : "";

    for(int i = 1; i < this._parameterTypes.length; i++)
    {
        parameterNames += ", " + this._parameterTypes[i].runtimeType.toString();
    }

    String functionSignature = isRuntimeFunction ? "RuntimeFunction: " : "ModuleFunction: ";
    functionSignature += returnTypeName + " " + functionName + " (" + parameterNames + ")";

    return functionSignature;
}