Table of Contents

Class ForEachResolveResult

Namespace
ICSharpCode.Decompiler.Semantics
Assembly
ICSharpCode.Decompiler.dll

Resolve result representing a 'foreach' loop.

public class ForEachResolveResult : ResolveResult
Inheritance
ForEachResolveResult
Inherited Members
Extension Methods

Constructors

ForEachResolveResult(ResolveResult, IType, IType, IType, IProperty, IMethod, IType)

public ForEachResolveResult(ResolveResult getEnumeratorCall, IType collectionType, IType enumeratorType, IType elementType, IProperty currentProperty, IMethod moveNextMethod, IType voidType)

Parameters

getEnumeratorCall ResolveResult
collectionType IType
enumeratorType IType
elementType IType
currentProperty IProperty
moveNextMethod IMethod
voidType IType

Fields

CollectionType

Gets the collection type.

public readonly IType CollectionType

Field Value

IType

CurrentProperty

Gets the Current property on the IEnumerator. Returns null if the property is not found.

public readonly IProperty CurrentProperty

Field Value

IProperty

ElementType

Gets the element type. This is the type that would be inferred for an implicitly-typed element variable. For explicitly-typed element variables, this type may differ from ElementVariable.Type.

public readonly IType ElementType

Field Value

IType

EnumeratorType

Gets the enumerator type.

public readonly IType EnumeratorType

Field Value

IType

GetEnumeratorCall

Gets the semantic tree for the call to GetEnumerator.

public readonly ResolveResult GetEnumeratorCall

Field Value

ResolveResult

MoveNextMethod

Gets the MoveNext() method on the IEnumerator. Returns null if the method is not found.

public readonly IMethod MoveNextMethod

Field Value

IMethod