Table of Contents

Class AwaitResolveResult

Namespace
ICSharpCode.Decompiler.CSharp.Resolver
Assembly
ICSharpCode.Decompiler.dll

Represents the result of an await expression.

public class AwaitResolveResult : ResolveResult
Inheritance
AwaitResolveResult
Inherited Members
Extension Methods

Constructors

AwaitResolveResult(IType, ResolveResult, IType, IProperty, IMethod, IMethod)

public AwaitResolveResult(IType resultType, ResolveResult getAwaiterInvocation, IType awaiterType, IProperty isCompletedProperty, IMethod onCompletedMethod, IMethod getResultMethod)

Parameters

resultType IType
getAwaiterInvocation ResolveResult
awaiterType IType
isCompletedProperty IProperty
onCompletedMethod IMethod
getResultMethod IMethod

Fields

AwaiterType

Awaiter type. Will not be null (but can be UnknownType).

public readonly IType AwaiterType

Field Value

IType

GetAwaiterInvocation

The method representing the GetAwaiter() call. Can be an InvocationResolveResult or a DynamicInvocationResolveResult.

public readonly ResolveResult GetAwaiterInvocation

Field Value

ResolveResult

GetResultMethod

Method representing the GetResult method on the awaiter type. Can be null if the awaiter type or the method was not found, or when awaiting a dynamic expression.

public readonly IMethod GetResultMethod

Field Value

IMethod

IsCompletedProperty

Property representing the IsCompleted property on the awaiter type. Can be null if the awaiter type or the property was not found, or when awaiting a dynamic expression.

public readonly IProperty IsCompletedProperty

Field Value

IProperty

OnCompletedMethod

Method representing the OnCompleted method on the awaiter type. Can be null if the awaiter type or the method was not found, or when awaiting a dynamic expression. This can also refer to an UnsafeOnCompleted method, if the awaiter type implements System.Runtime.CompilerServices.ICriticalNotifyCompletion.

public readonly IMethod OnCompletedMethod

Field Value

IMethod

Properties

IsError

public override bool IsError { get; }

Property Value

bool

Methods

GetChildResults()

public override IEnumerable<ResolveResult> GetChildResults()

Returns

IEnumerable<ResolveResult>