当前位置: 首页>>代码示例>>C#>>正文


C# MethodInfo.GetGenericArguments方法代码示例

本文整理汇总了C#中MethodInfo.GetGenericArguments方法的典型用法代码示例。如果您正苦于以下问题:C# MethodInfo.GetGenericArguments方法的具体用法?C# MethodInfo.GetGenericArguments怎么用?C# MethodInfo.GetGenericArguments使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在MethodInfo的用法示例。


在下文中一共展示了MethodInfo.GetGenericArguments方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: IsGenericMethod

    static bool IsGenericMethod(MethodInfo md)
    {
        if (md.IsGenericMethod)
        {
            Type[] gts = md.GetGenericArguments();
            List<ParameterInfo> list = new List<ParameterInfo>(md.GetParameters());

            for (int i = 0; i < gts.Length; i++)
            {
                Type[] ts = gts[i].GetGenericParameterConstraints();

                if (ts == null || ts.Length == 0 || IsGenericConstraints(ts))
                {
                    return true;
                }

                ParameterInfo p = list.Find((iter) => { return iter.ParameterType == gts[i]; });

                if (p == null)
                {
                    return true;
                }

                list.RemoveAll((iter) => { return iter.ParameterType == gts[i]; });
            }

            for (int i = 0; i < list.Count; i++)
            {
                Type t = list[i].ParameterType;

                if (IsGenericConstraintType(t))
                {
                    return true;
                }
            }
        }

        return false;
    }
开发者ID:xlwangcs,项目名称:LuaFramework_UGUI,代码行数:39,代码来源:ToLuaExport.cs

示例2: IsGenericType

    static bool IsGenericType(MethodInfo md, Type t)
    {
        Type[] list = md.GetGenericArguments();

        for (int i = 0; i < list.Length; i++)
        {
            if (list[i] == t)
            {
                return true;
            }
        }

        return false;
    }
开发者ID:xlwangcs,项目名称:LuaFramework_UGUI,代码行数:14,代码来源:ToLuaExport.cs

示例3: GenericParameters

	static string GenericParameters (MethodInfo method)
	{
		return method.IsGenericMethodDefinition ? string.Format ("<{0}>", method.GetGenericArguments () [0].Name) : "";
	}
开发者ID:transformersprimeabcxyz,项目名称:mono.linq.expressions,代码行数:4,代码来源:fluentextensions-generator.cs


注:本文中的MethodInfo.GetGenericArguments方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。