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


C# ModuleDefinition.GetMethod方法代码示例

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


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

示例1: Apply

        public override void Apply(ModuleDefinition module)
        {
            var method = module.GetMethod("System.Void Aura.Shared.Util.CliUtil::WriteHeader(System.String,System.ConsoleColor)");

            method.Body.SimplifyMacros();

            var bylineWrite = method.Body.Instructions.First(i => i.OpCode == OpCodes.Ldstr && i.Operand.ToString().Contains("by the"));

            do
            {
                bylineWrite = bylineWrite.Next;
            } while (!bylineWrite.Operand.ToString().Contains("System.Console::Write"));

            var il = method.Body.GetILProcessor();

            il.InsertAfter(bylineWrite,
                il.Create(OpCodes.Ldc_I4, (int)ConsoleColor.Yellow),
                il.Create(OpCodes.Call, module.Resolve(typeof(Console), "set_ForegroundColor")),
                il.Create(OpCodes.Ldstr, "                            == RADIATION Edition ==                             "),
                il.Create(OpCodes.Call, module.Resolve(typeof(Console), "Write", typeof(string)))
            );

            method.Body.OptimizeMacros();
        }
开发者ID:Xcelled,项目名称:aurora,代码行数:24,代码来源:WriteHeaderPatch.cs

示例2: BuildTypeCheckRelatedInstructions

        public static IEnumerable<Instruction> BuildTypeCheckRelatedInstructions(ModuleDefinition module, object parameterDefinitionOrFieldDefinition, CustomAttribute attribute)
        {
            var typeReference = (TypeReference)attribute.ConstructorArguments[0].Value;
            foreach (var instruction in BuildDefaultInstructionsInternal(parameterDefinitionOrFieldDefinition))
            {
                yield return instruction;
            }

            var importedGetTypeFromHandle = module.Import(module.GetMethod("GetTypeFromHandle"));

            yield return Instruction.Create(OpCodes.Ldtoken, typeReference);
            yield return Instruction.Create(OpCodes.Call, importedGetTypeFromHandle);
        }
开发者ID:Catel,项目名称:Catel.Fody,代码行数:13,代码来源:ArgumentInstructionSequenceBuilder.cs


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