本文整理汇总了C#中MethodBody.InsertBefore方法的典型用法代码示例。如果您正苦于以下问题:C# MethodBody.InsertBefore方法的具体用法?C# MethodBody.InsertBefore怎么用?C# MethodBody.InsertBefore使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MethodBody
的用法示例。
在下文中一共展示了MethodBody.InsertBefore方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: InnerProcess
void InnerProcess()
{
body = Method.Body;
body.SimplifyMacros();
var firstInstruction = FirstInstructionSkipCtor();
var indexOf = body.Instructions.IndexOf(firstInstruction);
var returnInstruction = FixReturns();
stopwatchVar = ModuleWeaver.InjectStopwatch(body, indexOf);
var beforeReturn = Instruction.Create(OpCodes.Nop);
body.InsertBefore(returnInstruction, beforeReturn);
InjectIlForFinally(returnInstruction);
var handler = new ExceptionHandler(ExceptionHandlerType.Finally)
{
TryStart = firstInstruction,
TryEnd = beforeReturn,
HandlerStart = beforeReturn,
HandlerEnd = returnInstruction,
};
body.ExceptionHandlers.Add(handler);
body.InitLocals = true;
body.OptimizeMacros();
}