本文整理汇总了C#中Mono.Cecil.TypeReference.Select方法的典型用法代码示例。如果您正苦于以下问题:C# TypeReference.Select方法的具体用法?C# TypeReference.Select怎么用?C# TypeReference.Select使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Mono.Cecil.TypeReference
的用法示例。
在下文中一共展示了TypeReference.Select方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ResolveMethod
public static MethodDefinition ResolveMethod(TypeDefinition typeDefinition, string methodName, TypeReference[] parameterTypes)
{
if (parameterTypes == null)
{
_log.Warn("\"ResolveMethod\" overload with parameter types called unnecessarily.");
return ResolveMethod(typeDefinition, methodName);
}
try
{
MethodDefinition methodDefinition =
typeDefinition.Methods.Single(
m => m.Name == methodName
&& m.Parameters.Select(p => p.ParameterType.FullName)
.SequenceEqual(parameterTypes.Select(p => p.FullName)));
_log.Debug("Method \"{0}\" successfully resolved in \"{1}\".", methodName, typeDefinition.FullName);
return methodDefinition;
}
catch (InvalidOperationException)
{
_log.Error("Method \"{0}\" with specified parameter types is unrecognised.", methodName);
throw new ArgumentException(string.Format("Method \"{0}\" with specified parameter types is unrecognised.", methodName), "methodName");
}
}
示例2: RunTests
private bool RunTests(string targetAssemblyLocation, string targetClass, string targetMethod, TypeReference[] parameterTypes)
{
var parameterList = parameterTypes == null || parameterTypes.Length == 0
? null
: string.Join(", ", parameterTypes.Select(t => t.Name).ToArray());
OutputMethod(targetClass, targetMethod, parameterList);
MutationTest mutationTest =
parameterTypes == null
? (MutationTest)MutationTestBuilder.For(targetAssemblyLocation, targetClass, targetMethod)
: (MutationTest)MutationTestBuilder.For(targetAssemblyLocation, targetClass, targetMethod, parameterTypes);
if (_runnerType != null)
{
mutationTest.UsingRunner(_runnerType);
}
mutationTest.TestAssemblyLocation = _testAssemblyLocation;
var result = BuildAndRunMutationTest(mutationTest);
return result;
}