private static ParameterDefinition ParameterFor(MR.Instruction instruction, MethodDefinition method) { var parameter = (ParameterInfo)instruction.Operand; return method.Parameters[parameter.Position]; }
private static VariableDefinition VariableFor(MR.Instruction instruction, MethodDefinition method) { var local = (LocalVariableInfo)instruction.Operand; return method.Body.Variables[local.LocalIndex]; }
private static OpCode OpCodeFor(MR.Instruction instruction) { foreach (var opcode in _opcodes) if (opcode.Value == instruction.OpCode.Value) return opcode; throw new NotSupportedException("OpCode not found: " + instruction.OpCode.Name); }