MCPcopy Create free account
hub / github.com/anjo76/angelscript / PrintMatchingFuncs

Method PrintMatchingFuncs

sdk/angelscript/source/as_compiler.cpp:6312–6343  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

6310}
6311
6312void asCCompiler::PrintMatchingFuncs(asCArray<int> &funcs, asCScriptNode *node, asCObjectType *inType)
6313{
6314 int r = 0, c = 0;
6315 asASSERT( node );
6316 if( node ) script->ConvertPosToRowCol(node->tokenPos, &r, &c);
6317
6318 for( unsigned int n = 0; n < funcs.GetLength(); n++ )
6319 {
6320 asCScriptFunction *func = builder->GetFunctionDescription(funcs[n]);
6321 if( inType && func->funcType == asFUNC_VIRTUAL )
6322 func = inType->virtualFunctionTable[func->vfTableIdx];
6323
6324 builder->WriteInfo(script->name, func->GetDeclaration(true, true, true), r, c, false);
6325
6326 if (func->objectType && (func->objectType->flags & asOBJ_TEMPLATE))
6327 {
6328 // Check for funcdefs in the arguments that may have been generated by the template instance, so these can be shown to user
6329 for (unsigned int p = 0; p < func->GetParamCount(); p++)
6330 {
6331 int typeId = 0;
6332 func->GetParam(p, &typeId);
6333 asITypeInfo *ti = engine->GetTypeInfoById(typeId);
6334 if (ti && (ti->GetFlags() & asOBJ_FUNCDEF))
6335 {
6336 asCString msg;
6337 msg.Format(TXT_WHERE_s_IS_s, ti->GetName(), ti->GetFuncdefSignature()->GetDeclaration());
6338 builder->WriteInfo(script->name, msg.AddressOf(), r, c, false);
6339 }
6340 }
6341 }
6342 }
6343}
6344
6345int asCCompiler::AllocateVariableNotIn(const asCDataType &type, bool isTemporary, bool forceOnHeap, asCExprContext *ctx)
6346{

Callers

nothing calls this directly

Calls 13

ConvertPosToRowColMethod · 0.80
WriteInfoMethod · 0.80
GetDeclarationMethod · 0.80
GetParamCountMethod · 0.80
GetParamMethod · 0.80
GetTypeInfoByIdMethod · 0.80
GetFlagsMethod · 0.80
GetLengthMethod · 0.45
FormatMethod · 0.45
GetNameMethod · 0.45
GetFuncdefSignatureMethod · 0.45

Tested by

no test coverage detected