private static MethodSymbol LookupMethodWhileLoading(AggregateSymbol type, int cMethodTyVars, Name methodName, ACCESS methodAccess, bool isStatic, bool isVirtual, CType returnType, TypeArray argumentTypes) { for (Symbol sym = SymbolLoader.LookupAggMember(methodName, type, symbmask_t.MASK_ALL); sym != null; sym = sym.LookupNext(symbmask_t.MASK_ALL)) { if (sym is MethodSymbol methsym) { if ((methsym.GetAccess() == methodAccess || methodAccess == ACCESS.ACC_UNKNOWN) && methsym.isStatic == isStatic && methsym.isVirtual == isVirtual && methsym.typeVars.Count == cMethodTyVars && TypeManager.SubstEqualTypes(methsym.RetType, returnType, null, methsym.typeVars, true) && TypeManager.SubstEqualTypeArrays(methsym.Params, argumentTypes, null, methsym.typeVars)) { return(methsym); } } } return(null); }