本文整理汇总了C++中Procedure::GetReturnType方法的典型用法代码示例。如果您正苦于以下问题:C++ Procedure::GetReturnType方法的具体用法?C++ Procedure::GetReturnType怎么用?C++ Procedure::GetReturnType使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Procedure
的用法示例。
在下文中一共展示了Procedure::GetReturnType方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: generateProcCall
void CPPClientStubGenerator::generateProcCall(Procedure &proc)
{
string call;
if (proc.GetProcedureType() == RPC_METHOD)
{
call = TEMPLATE_METHODCALL;
cg.writeLine(replaceAll(call, "<name>", proc.GetProcedureName()));
call = TEMPLATE_RETURNCHECK;
replaceAll2(call,"<cast>", CPPHelper::isCppConversion(proc.GetReturnType()));
cg.writeLine(call);
cg.increaseIndentation();
call = TEMPLATE_RETURN;
replaceAll2(call,"<cast>", CPPHelper::toCppConversion(proc.GetReturnType()));
cg.writeLine(call);
cg.decreaseIndentation();
cg.writeLine("else");
cg.increaseIndentation();
cg.writeLine("throw jsonrpc::JsonRpcException(jsonrpc::Errors::ERROR_CLIENT_INVALID_RESPONSE, result.toStyledString());");
cg.decreaseIndentation();
}
else
{
call = TEMPLATE_NOTIFICATIONCALL;
replaceAll2(call, "<name>", proc.GetProcedureName());
cg.writeLine(call);
}
}
示例2: generateMethod
void CPPClientStubGenerator::generateMethod(Procedure &proc)
{
string procsignature = TEMPLATE_CPPCLIENT_SIGMETHOD;
string returntype = CPPHelper::toCppType(proc.GetReturnType());
if (proc.GetProcedureType() == RPC_NOTIFICATION)
returntype = "void";
replaceAll2(procsignature, "<returntype>", returntype);
replaceAll2(procsignature, "<methodname>", CPPHelper::normalizeString(proc.GetProcedureName()));
replaceAll2(procsignature, "<parameters>", CPPHelper::generateParameterDeclarationList(proc));
cg.writeLine(procsignature);
cg.writeLine("{");
cg.increaseIndentation();
cg.writeLine("Json::Value p;");
generateAssignments(proc);
generateProcCall(proc);
cg.decreaseIndentation();
cg.writeLine("}");
}
示例3: toJsonLiteral
void SpecificationWriter::procedureToJsonValue (const Procedure &procedure, Json::Value &target)
{
target[KEY_SPEC_PROCEDURE_NAME] = procedure.GetProcedureName();
if(procedure.GetProcedureType() == RPC_METHOD)
{
target[KEY_SPEC_RETURN_TYPE] = toJsonLiteral(procedure.GetReturnType());
}
for(parameterNameList_t::const_iterator it = procedure.GetParameters().begin(); it != procedure.GetParameters().end(); ++it)
{
if(procedure.GetParameterDeclarationType() == PARAMS_BY_NAME)
{
target[KEY_SPEC_PROCEDURE_PARAMETERS][it->first] = toJsonLiteral(it->second);
}
else
{
target[KEY_SPEC_PROCEDURE_PARAMETERS].append(toJsonLiteral(it->second));
}
}
}