Table of Contents

Struct MethodDevirtualizationResult

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

Provides information about the result of a method devirtualization process.

public readonly struct MethodDevirtualizationResult
Inherited Members

Properties

ExceptionObject

When unsuccessful, gets the exception thrown during the devirtualization process.

public ObjectHandle ExceptionObject { get; }

Property Value

ObjectHandle

IsSuccess

Gets a value indicating whether the devirtualization process of the referenced method was successful.

public bool IsSuccess { get; }

Property Value

bool

IsUnknown

Gets a value indicating whether the devirtualization process could not be completed due to an unknown object that was dereferenced.

public bool IsUnknown { get; }

Property Value

bool

ResultingMethod

When successful, gets the resulting devirtualized method.

public IMethodDescriptor? ResultingMethod { get; }

Property Value

IMethodDescriptor

Methods

Exception(ObjectHandle)

Creates a new unsuccessful method devirtualization result.

public static MethodDevirtualizationResult Exception(ObjectHandle exceptionObject)

Parameters

exceptionObject ObjectHandle

The handle to the exception that occurred during the method devirtualization.

Returns

MethodDevirtualizationResult

Success(IMethodDescriptor)

Creates a new successful method devirtualization result.

public static MethodDevirtualizationResult Success(IMethodDescriptor method)

Parameters

method IMethodDescriptor

The resolved method.

Returns

MethodDevirtualizationResult

Unknown()

Creates a new unknown method devirtualization result.

public static MethodDevirtualizationResult Unknown()

Returns

MethodDevirtualizationResult