public static IList<PARAMETER> GetFunArguments(CorFunction function) { //IMetadataImport m_importer; MetaModule module = new MetaModule(function.Module.corModule); //MetadataMethodInfo method = module.FindMethod(function.Class.Token, function.Token); MetaType type = module.FindType(function.Class.Token); MetadataMethodInfo method = type.FindMethod((int)function.Token); return method.Arguments; }
public static MetaType GetClass(CorClass fnClass) { //IMetadataImport m_importer; string name = string.Empty; MetaModule module = new MetaModule(fnClass.m_module); //MetadataMethodInfo method = module.FindMethod(function.Class.Token, function.Token); MetaType type = module.FindType(fnClass.Token); return type ; }
public static string GetFullName(CorFunction function) { //IMetadataImport m_importer; MetaModule module = new MetaModule(function.Module.corModule); //MetadataMethodInfo method = module.FindMethod(function.Class.Token, function.Token); MetaType type = module.FindType(function.Class.Token); MetadataMethodInfo method = type.FindMethod((int)function.Token); return method.Signature; }
public static METHODSig GetMethodSig(CorFunction function) { METHODSig methodsig = new METHODSig(); MetaModule module = new MetaModule(function.Module.corModule); //MetadataMethodInfo method = module.FindMethod(function.Class.Token, function.Token); MetaType type = module.FindType(function.Class.Token); if (type != null){ MetadataMethodInfo method = type.FindMethod((int)function.Token); if (method != null){ methodsig.name = type.Name + "." + method.Name; methodsig.isStatic = method.IsStatic; methodsig.isGeneric = method.IsGenericMethod; //methodsig.retuntype //ParameterInfo[] paramaters = method.GetParameters(); //if ((paramaters != null) && (paramaters.Length > 0)){ // List<PARAMETER> prms = new List<PARAMETER>(); // foreach (ParameterInfo arg in paramaters){ // PARAMETER param = new PARAMETER(); // param.name = arg.Name; // //param.name = type??? // } //} } } return methodsig; }