///////////////////////////////////////////////////////////////////////////// protected static object [] FindMethod( ObjectInfo objInfo, object [] argsIn, out MethodBase miOut ) { // ****** IList<MethodBase> methods = objInfo.MembersAs<MethodBase>(); // ****** MethodBase mi; object [] args = MatchArgs( methods, argsIn, out mi ); if( null != args ) { miOut = mi; return args; } // // never returns // ThreadContext.MacroError( "unable to locate an implementation of \"{0}\" whose parameters match (or can be converted from) \"{1}\"\nTried matching:\n{2}", objInfo.MemberName, Arguments.ObjectsTypeNames(argsIn), Arguments.GetMethodSignatures(methods) ); // ****** miOut = null; return null; }