public override void Visit(IndirectMethodCallInstruction instruction) { if (instruction.HasResult) { instruction.Result.Type = instruction.Function.Type; } }
public override void Visit(IndirectMethodCallInstruction instruction) { if (instruction.HasResult) { DefaultVarTop(instruction, instruction.Result); } else { Default(instruction); } }
public override void Visit(IndirectMethodCallInstruction instruction) { if (instruction.HasResult) { instruction.Result.Type = instruction.Function.Type; } // Skip implicit "this" parameter. var offset = instruction.Function.IsStatic ? 0 : 1; for (var i = offset; i < instruction.Arguments.Count; ++i) { var argument = instruction.Arguments[i]; var parameter = instruction.Function.Parameters.ElementAt(i - offset); // Set the null variable a type. if (argument.Type == null || parameter.Type.TypeCode == PrimitiveTypeCode.Boolean) { argument.Type = parameter.Type; } } }
public override void Visit(IndirectMethodCallInstruction instruction) { VisitMethodInvocation(instruction, instruction.Result, instruction.Arguments, instruction.HasResult, instruction.Function.IsStatic); }
public virtual void Visit(IndirectMethodCallInstruction instruction) { }