Table of Contents

Class MethodShimInvoker

Namespace
Echo.Platforms.AsmResolver.Emulation.Invocation
Assembly
Echo.Platforms.AsmResolver.dll

Provides an implementation that handles invocations on a per-method basis.

public class MethodShimInvoker : IMethodInvoker
Inheritance
MethodShimInvoker
Implements
Inherited Members
Extension Methods

Constructors

MethodShimInvoker()

Creates a new method shim invoker.

public MethodShimInvoker()

MethodShimInvoker(SignatureComparer)

Creates a new method shim invoker.

public MethodShimInvoker(SignatureComparer comparer)

Parameters

comparer SignatureComparer

The comparer object to use when comparing methods.

Methods

Invoke(CilExecutionContext, IMethodDescriptor, IList<BitVector>)

Invokes or emulates an external method.

public InvocationResult Invoke(CilExecutionContext context, IMethodDescriptor method, IList<BitVector> arguments)

Parameters

context CilExecutionContext

The execution context the call originates from.

method IMethodDescriptor

The method to invoke.

arguments IList<BitVector>

The arguments to invoke the method with.

Returns

InvocationResult

The result

Map(IMethodDescriptor, IMethodInvoker)

Assigns a method invoker to a specific method.

public MethodShimInvoker Map(IMethodDescriptor method, IMethodInvoker handler)

Parameters

method IMethodDescriptor

The method to handle.

handler IMethodInvoker

The invoker that will handle the method.

Returns

MethodShimInvoker

The current method shim invoker.

Map(IMethodDescriptor, MethodHandler)

Assigns a method invoker to a specific method.

public MethodShimInvoker Map(IMethodDescriptor method, MethodHandler handler)

Parameters

method IMethodDescriptor

The method to handle.

handler MethodHandler

The invoker that will handle the method.

Returns

MethodShimInvoker

The current method shim invoker.

MapMany(IEnumerable<IMethodDescriptor>, IMethodInvoker)

Assigns a methods invoker to multiple methods.

public MethodShimInvoker MapMany(IEnumerable<IMethodDescriptor> methods, IMethodInvoker handler)

Parameters

methods IEnumerable<IMethodDescriptor>

The methods to handle.

handler IMethodInvoker

The invoker that will handle the method.

Returns

MethodShimInvoker

The current method shim invoker.

MapMany(IEnumerable<IMethodDescriptor>, MethodHandler)

Assigns a methods invoker to multiple methods.

public MethodShimInvoker MapMany(IEnumerable<IMethodDescriptor> methods, MethodHandler handler)

Parameters

methods IEnumerable<IMethodDescriptor>

The methods to handle.

handler MethodHandler

The invoker that will handle the method.

Returns

MethodShimInvoker

The current method shim invoker.