本文整理汇总了C#中Internal.TypeSystem.MethodDesc.HasCustomAttribute方法的典型用法代码示例。如果您正苦于以下问题:C# MethodDesc.HasCustomAttribute方法的具体用法?C# MethodDesc.HasCustomAttribute怎么用?C# MethodDesc.HasCustomAttribute使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Internal.TypeSystem.MethodDesc
的用法示例。
在下文中一共展示了MethodDesc.HasCustomAttribute方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: CreateMethodEntrypointNode
protected override IMethodNode CreateMethodEntrypointNode(MethodDesc method)
{
if (method.HasCustomAttribute("System.Runtime", "RuntimeImportAttribute"))
{
return new RuntimeImportMethodNode(method);
}
if (CompilationModuleGroup.ContainsMethod(method))
{
return new MethodCodeNode(method);
}
else
{
return new ExternMethodSymbolNode(method);
}
}
示例2: CreateMethodEntrypointNode
protected override IMethodNode CreateMethodEntrypointNode(MethodDesc method)
{
if (method.IsInternalCall)
{
// The only way to locate the entrypoint for an internal call is through the RuntimeImportAttribute.
// If this is a method that doesn't have it (e.g. a string constructor), the method should never
// have reached this code path.
Debug.Assert(method.HasCustomAttribute("System.Runtime", "RuntimeImportAttribute"));
return new RuntimeImportMethodNode(method);
}
if (CompilationModuleGroup.ContainsMethod(method))
{
return new MethodCodeNode(method);
}
else
{
return new ExternMethodSymbolNode(method);
}
}
示例3: CreateMethodEntrypointNode
protected override IMethodNode CreateMethodEntrypointNode(MethodDesc method)
{
if (method.IsInternalCall)
{
// The only way to locate the entrypoint for an internal call is through the RuntimeImportAttribute.
if (method.HasCustomAttribute("System.Runtime", "RuntimeImportAttribute"))
{
return new RuntimeImportMethodNode(method);
}
// On CLR this would throw a SecurityException with "ECall methods must be packaged into a system module."
// This is a corner case that nobody is likely to care about.
throw new TypeSystemException.InvalidProgramException(ExceptionStringID.InvalidProgramSpecific, method);
}
if (CompilationModuleGroup.ContainsMethod(method))
{
return new MethodCodeNode(method);
}
else
{
return new ExternMethodSymbolNode(method);
}
}