Table of Contents

Class UnboxAnyHandler

Namespace
Echo.Platforms.AsmResolver.Emulation.Dispatch.ObjectModel
Assembly
Echo.Platforms.AsmResolver.dll

Implements a CIL instruction handler for unbox.any operations.

[DispatcherTableEntry(new CilCode[] { CilCode.Unbox_Any })]
public class UnboxAnyHandler : UnboxHandlerBase, ICilOpCodeHandler
Inheritance
UnboxAnyHandler
Implements
Inherited Members

Methods

GetReturnValue(CilExecutionContext, ObjectHandle, TypeSignature)

Transforms the resolved data address into a value to be pushed onto the stack.

protected override StackSlot GetReturnValue(CilExecutionContext context, ObjectHandle handle, TypeSignature targetType)

Parameters

context CilExecutionContext

The context in which the instruction is emulated in.

handle ObjectHandle

The address.

targetType TypeSignature

The data type of the value at the address.

Returns

StackSlot

The return value.

HandleNull(CilExecutionContext, TypeSignature)

Handles the case when the pushed value is null.

protected override CilDispatchResult HandleNull(CilExecutionContext context, TypeSignature targetType)

Parameters

context CilExecutionContext

The context to evaluate the instruction in.

targetType TypeSignature

The type to convert the null reference to.

Returns

CilDispatchResult

The final dispatcher result.