Table of Contents

Class ILVisitor<C, T>

Namespace
ICSharpCode.Decompiler.IL
Assembly
ICSharpCode.Decompiler.dll

Base class for visitor pattern.

public abstract class ILVisitor<C, T>

Type Parameters

C
T
Inheritance
ILVisitor<C, T>
Inherited Members

Constructors

ILVisitor()

protected ILVisitor()

Methods

Default(ILInstruction, C)

Called by Visit*() methods that were not overridden

protected abstract T Default(ILInstruction inst, C context)

Parameters

inst ILInstruction
context C

Returns

T

VisitAddressOf(AddressOf, C)

protected virtual T VisitAddressOf(AddressOf inst, C context)

Parameters

inst AddressOf
context C

Returns

T

VisitArglist(Arglist, C)

protected virtual T VisitArglist(Arglist inst, C context)

Parameters

inst Arglist
context C

Returns

T

VisitAwait(Await, C)

protected virtual T VisitAwait(Await inst, C context)

Parameters

inst Await
context C

Returns

T

VisitBinaryNumericInstruction(BinaryNumericInstruction, C)

protected virtual T VisitBinaryNumericInstruction(BinaryNumericInstruction inst, C context)

Parameters

inst BinaryNumericInstruction
context C

Returns

T

VisitBitNot(BitNot, C)

protected virtual T VisitBitNot(BitNot inst, C context)

Parameters

inst BitNot
context C

Returns

T

VisitBlock(Block, C)

protected virtual T VisitBlock(Block block, C context)

Parameters

block Block
context C

Returns

T

VisitBlockContainer(BlockContainer, C)

protected virtual T VisitBlockContainer(BlockContainer container, C context)

Parameters

container BlockContainer
context C

Returns

T

VisitBox(Box, C)

protected virtual T VisitBox(Box inst, C context)

Parameters

inst Box
context C

Returns

T

VisitBranch(Branch, C)

protected virtual T VisitBranch(Branch inst, C context)

Parameters

inst Branch
context C

Returns

T

VisitCall(Call, C)

protected virtual T VisitCall(Call inst, C context)

Parameters

inst Call
context C

Returns

T

VisitCallIndirect(CallIndirect, C)

protected virtual T VisitCallIndirect(CallIndirect inst, C context)

Parameters

inst CallIndirect
context C

Returns

T

VisitCallVirt(CallVirt, C)

protected virtual T VisitCallVirt(CallVirt inst, C context)

Parameters

inst CallVirt
context C

Returns

T

VisitCastClass(CastClass, C)

protected virtual T VisitCastClass(CastClass inst, C context)

Parameters

inst CastClass
context C

Returns

T

VisitCkfinite(Ckfinite, C)

protected virtual T VisitCkfinite(Ckfinite inst, C context)

Parameters

inst Ckfinite
context C

Returns

T

VisitComp(Comp, C)

protected virtual T VisitComp(Comp inst, C context)

Parameters

inst Comp
context C

Returns

T

VisitConv(Conv, C)

protected virtual T VisitConv(Conv inst, C context)

Parameters

inst Conv
context C

Returns

T

VisitCpblk(Cpblk, C)

protected virtual T VisitCpblk(Cpblk inst, C context)

Parameters

inst Cpblk
context C

Returns

T

VisitDebugBreak(DebugBreak, C)

protected virtual T VisitDebugBreak(DebugBreak inst, C context)

Parameters

inst DebugBreak
context C

Returns

T

VisitDeconstructInstruction(DeconstructInstruction, C)

protected virtual T VisitDeconstructInstruction(DeconstructInstruction inst, C context)

Parameters

inst DeconstructInstruction
context C

Returns

T

VisitDeconstructResultInstruction(DeconstructResultInstruction, C)

protected virtual T VisitDeconstructResultInstruction(DeconstructResultInstruction inst, C context)

Parameters

inst DeconstructResultInstruction
context C

Returns

T

VisitDefaultValue(DefaultValue, C)

protected virtual T VisitDefaultValue(DefaultValue inst, C context)

Parameters

inst DefaultValue
context C

Returns

T

VisitDynamicBinaryOperatorInstruction(DynamicBinaryOperatorInstruction, C)

protected virtual T VisitDynamicBinaryOperatorInstruction(DynamicBinaryOperatorInstruction inst, C context)

Parameters

inst DynamicBinaryOperatorInstruction
context C

Returns

T

VisitDynamicCompoundAssign(DynamicCompoundAssign, C)

protected virtual T VisitDynamicCompoundAssign(DynamicCompoundAssign inst, C context)

Parameters

inst DynamicCompoundAssign
context C

Returns

T

VisitDynamicConvertInstruction(DynamicConvertInstruction, C)

protected virtual T VisitDynamicConvertInstruction(DynamicConvertInstruction inst, C context)

Parameters

inst DynamicConvertInstruction
context C

Returns

T

VisitDynamicGetIndexInstruction(DynamicGetIndexInstruction, C)

protected virtual T VisitDynamicGetIndexInstruction(DynamicGetIndexInstruction inst, C context)

Parameters

inst DynamicGetIndexInstruction
context C

Returns

T

VisitDynamicGetMemberInstruction(DynamicGetMemberInstruction, C)

protected virtual T VisitDynamicGetMemberInstruction(DynamicGetMemberInstruction inst, C context)

Parameters

inst DynamicGetMemberInstruction
context C

Returns

T

VisitDynamicInvokeConstructorInstruction(DynamicInvokeConstructorInstruction, C)

protected virtual T VisitDynamicInvokeConstructorInstruction(DynamicInvokeConstructorInstruction inst, C context)

Parameters

inst DynamicInvokeConstructorInstruction
context C

Returns

T

VisitDynamicInvokeInstruction(DynamicInvokeInstruction, C)

protected virtual T VisitDynamicInvokeInstruction(DynamicInvokeInstruction inst, C context)

Parameters

inst DynamicInvokeInstruction
context C

Returns

T

VisitDynamicInvokeMemberInstruction(DynamicInvokeMemberInstruction, C)

protected virtual T VisitDynamicInvokeMemberInstruction(DynamicInvokeMemberInstruction inst, C context)

Parameters

inst DynamicInvokeMemberInstruction
context C

Returns

T

VisitDynamicIsEventInstruction(DynamicIsEventInstruction, C)

protected virtual T VisitDynamicIsEventInstruction(DynamicIsEventInstruction inst, C context)

Parameters

inst DynamicIsEventInstruction
context C

Returns

T

VisitDynamicLogicOperatorInstruction(DynamicLogicOperatorInstruction, C)

protected virtual T VisitDynamicLogicOperatorInstruction(DynamicLogicOperatorInstruction inst, C context)

Parameters

inst DynamicLogicOperatorInstruction
context C

Returns

T

VisitDynamicSetIndexInstruction(DynamicSetIndexInstruction, C)

protected virtual T VisitDynamicSetIndexInstruction(DynamicSetIndexInstruction inst, C context)

Parameters

inst DynamicSetIndexInstruction
context C

Returns

T

VisitDynamicSetMemberInstruction(DynamicSetMemberInstruction, C)

protected virtual T VisitDynamicSetMemberInstruction(DynamicSetMemberInstruction inst, C context)

Parameters

inst DynamicSetMemberInstruction
context C

Returns

T

VisitDynamicUnaryOperatorInstruction(DynamicUnaryOperatorInstruction, C)

protected virtual T VisitDynamicUnaryOperatorInstruction(DynamicUnaryOperatorInstruction inst, C context)

Parameters

inst DynamicUnaryOperatorInstruction
context C

Returns

T

VisitExpressionTreeCast(ExpressionTreeCast, C)

protected virtual T VisitExpressionTreeCast(ExpressionTreeCast inst, C context)

Parameters

inst ExpressionTreeCast
context C

Returns

T

VisitGetPinnableReference(GetPinnableReference, C)

protected virtual T VisitGetPinnableReference(GetPinnableReference inst, C context)

Parameters

inst GetPinnableReference
context C

Returns

T

VisitILFunction(ILFunction, C)

protected virtual T VisitILFunction(ILFunction function, C context)

Parameters

function ILFunction
context C

Returns

T

VisitIfInstruction(IfInstruction, C)

protected virtual T VisitIfInstruction(IfInstruction inst, C context)

Parameters

inst IfInstruction
context C

Returns

T

VisitInitblk(Initblk, C)

protected virtual T VisitInitblk(Initblk inst, C context)

Parameters

inst Initblk
context C

Returns

T

VisitInvalidBranch(InvalidBranch, C)

protected virtual T VisitInvalidBranch(InvalidBranch inst, C context)

Parameters

inst InvalidBranch
context C

Returns

T

VisitInvalidExpression(InvalidExpression, C)

protected virtual T VisitInvalidExpression(InvalidExpression inst, C context)

Parameters

inst InvalidExpression
context C

Returns

T

VisitIsInst(IsInst, C)

protected virtual T VisitIsInst(IsInst inst, C context)

Parameters

inst IsInst
context C

Returns

T

VisitLdElema(LdElema, C)

protected virtual T VisitLdElema(LdElema inst, C context)

Parameters

inst LdElema
context C

Returns

T

VisitLdFlda(LdFlda, C)

protected virtual T VisitLdFlda(LdFlda inst, C context)

Parameters

inst LdFlda
context C

Returns

T

VisitLdFtn(LdFtn, C)

protected virtual T VisitLdFtn(LdFtn inst, C context)

Parameters

inst LdFtn
context C

Returns

T

VisitLdLen(LdLen, C)

protected virtual T VisitLdLen(LdLen inst, C context)

Parameters

inst LdLen
context C

Returns

T

VisitLdLoc(LdLoc, C)

protected virtual T VisitLdLoc(LdLoc inst, C context)

Parameters

inst LdLoc
context C

Returns

T

VisitLdLoca(LdLoca, C)

protected virtual T VisitLdLoca(LdLoca inst, C context)

Parameters

inst LdLoca
context C

Returns

T

VisitLdMemberToken(LdMemberToken, C)

protected virtual T VisitLdMemberToken(LdMemberToken inst, C context)

Parameters

inst LdMemberToken
context C

Returns

T

VisitLdNull(LdNull, C)

protected virtual T VisitLdNull(LdNull inst, C context)

Parameters

inst LdNull
context C

Returns

T

VisitLdObj(LdObj, C)

protected virtual T VisitLdObj(LdObj inst, C context)

Parameters

inst LdObj
context C

Returns

T

VisitLdStr(LdStr, C)

protected virtual T VisitLdStr(LdStr inst, C context)

Parameters

inst LdStr
context C

Returns

T

VisitLdStrUtf8(LdStrUtf8, C)

protected virtual T VisitLdStrUtf8(LdStrUtf8 inst, C context)

Parameters

inst LdStrUtf8
context C

Returns

T

VisitLdTypeToken(LdTypeToken, C)

protected virtual T VisitLdTypeToken(LdTypeToken inst, C context)

Parameters

inst LdTypeToken
context C

Returns

T

VisitLdVirtDelegate(LdVirtDelegate, C)

protected virtual T VisitLdVirtDelegate(LdVirtDelegate inst, C context)

Parameters

inst LdVirtDelegate
context C

Returns

T

VisitLdVirtFtn(LdVirtFtn, C)

protected virtual T VisitLdVirtFtn(LdVirtFtn inst, C context)

Parameters

inst LdVirtFtn
context C

Returns

T

VisitLdcDecimal(LdcDecimal, C)

protected virtual T VisitLdcDecimal(LdcDecimal inst, C context)

Parameters

inst LdcDecimal
context C

Returns

T

VisitLdcF4(LdcF4, C)

protected virtual T VisitLdcF4(LdcF4 inst, C context)

Parameters

inst LdcF4
context C

Returns

T

VisitLdcF8(LdcF8, C)

protected virtual T VisitLdcF8(LdcF8 inst, C context)

Parameters

inst LdcF8
context C

Returns

T

VisitLdcI4(LdcI4, C)

protected virtual T VisitLdcI4(LdcI4 inst, C context)

Parameters

inst LdcI4
context C

Returns

T

VisitLdcI8(LdcI8, C)

protected virtual T VisitLdcI8(LdcI8 inst, C context)

Parameters

inst LdcI8
context C

Returns

T

VisitLdsFlda(LdsFlda, C)

protected virtual T VisitLdsFlda(LdsFlda inst, C context)

Parameters

inst LdsFlda
context C

Returns

T

VisitLeave(Leave, C)

protected virtual T VisitLeave(Leave inst, C context)

Parameters

inst Leave
context C

Returns

T

VisitLocAlloc(LocAlloc, C)

protected virtual T VisitLocAlloc(LocAlloc inst, C context)

Parameters

inst LocAlloc
context C

Returns

T

VisitLocAllocSpan(LocAllocSpan, C)

protected virtual T VisitLocAllocSpan(LocAllocSpan inst, C context)

Parameters

inst LocAllocSpan
context C

Returns

T

VisitLockInstruction(LockInstruction, C)

protected virtual T VisitLockInstruction(LockInstruction inst, C context)

Parameters

inst LockInstruction
context C

Returns

T

VisitMakeRefAny(MakeRefAny, C)

protected virtual T VisitMakeRefAny(MakeRefAny inst, C context)

Parameters

inst MakeRefAny
context C

Returns

T

VisitMatchInstruction(MatchInstruction, C)

protected virtual T VisitMatchInstruction(MatchInstruction inst, C context)

Parameters

inst MatchInstruction
context C

Returns

T

VisitNewArr(NewArr, C)

protected virtual T VisitNewArr(NewArr inst, C context)

Parameters

inst NewArr
context C

Returns

T

VisitNewObj(NewObj, C)

protected virtual T VisitNewObj(NewObj inst, C context)

Parameters

inst NewObj
context C

Returns

T

VisitNop(Nop, C)

protected virtual T VisitNop(Nop inst, C context)

Parameters

inst Nop
context C

Returns

T

VisitNullCoalescingInstruction(NullCoalescingInstruction, C)

protected virtual T VisitNullCoalescingInstruction(NullCoalescingInstruction inst, C context)

Parameters

inst NullCoalescingInstruction
context C

Returns

T

VisitNullableRewrap(NullableRewrap, C)

protected virtual T VisitNullableRewrap(NullableRewrap inst, C context)

Parameters

inst NullableRewrap
context C

Returns

T

VisitNullableUnwrap(NullableUnwrap, C)

protected virtual T VisitNullableUnwrap(NullableUnwrap inst, C context)

Parameters

inst NullableUnwrap
context C

Returns

T

VisitNumericCompoundAssign(NumericCompoundAssign, C)

protected virtual T VisitNumericCompoundAssign(NumericCompoundAssign inst, C context)

Parameters

inst NumericCompoundAssign
context C

Returns

T

VisitPinnedRegion(PinnedRegion, C)

protected virtual T VisitPinnedRegion(PinnedRegion inst, C context)

Parameters

inst PinnedRegion
context C

Returns

T

VisitRefAnyType(RefAnyType, C)

protected virtual T VisitRefAnyType(RefAnyType inst, C context)

Parameters

inst RefAnyType
context C

Returns

T

VisitRefAnyValue(RefAnyValue, C)

protected virtual T VisitRefAnyValue(RefAnyValue inst, C context)

Parameters

inst RefAnyValue
context C

Returns

T

VisitRethrow(Rethrow, C)

protected virtual T VisitRethrow(Rethrow inst, C context)

Parameters

inst Rethrow
context C

Returns

T

VisitSizeOf(SizeOf, C)

protected virtual T VisitSizeOf(SizeOf inst, C context)

Parameters

inst SizeOf
context C

Returns

T

VisitStLoc(StLoc, C)

protected virtual T VisitStLoc(StLoc inst, C context)

Parameters

inst StLoc
context C

Returns

T

VisitStObj(StObj, C)

protected virtual T VisitStObj(StObj inst, C context)

Parameters

inst StObj
context C

Returns

T

VisitStringToInt(StringToInt, C)

protected virtual T VisitStringToInt(StringToInt inst, C context)

Parameters

inst StringToInt
context C

Returns

T

VisitSwitchInstruction(SwitchInstruction, C)

protected virtual T VisitSwitchInstruction(SwitchInstruction inst, C context)

Parameters

inst SwitchInstruction
context C

Returns

T

VisitSwitchSection(SwitchSection, C)

protected virtual T VisitSwitchSection(SwitchSection inst, C context)

Parameters

inst SwitchSection
context C

Returns

T

VisitThreeValuedBoolAnd(ThreeValuedBoolAnd, C)

protected virtual T VisitThreeValuedBoolAnd(ThreeValuedBoolAnd inst, C context)

Parameters

inst ThreeValuedBoolAnd
context C

Returns

T

VisitThreeValuedBoolOr(ThreeValuedBoolOr, C)

protected virtual T VisitThreeValuedBoolOr(ThreeValuedBoolOr inst, C context)

Parameters

inst ThreeValuedBoolOr
context C

Returns

T

VisitThrow(Throw, C)

protected virtual T VisitThrow(Throw inst, C context)

Parameters

inst Throw
context C

Returns

T

VisitTryCatch(TryCatch, C)

protected virtual T VisitTryCatch(TryCatch inst, C context)

Parameters

inst TryCatch
context C

Returns

T

VisitTryCatchHandler(TryCatchHandler, C)

protected virtual T VisitTryCatchHandler(TryCatchHandler inst, C context)

Parameters

inst TryCatchHandler
context C

Returns

T

VisitTryFault(TryFault, C)

protected virtual T VisitTryFault(TryFault inst, C context)

Parameters

inst TryFault
context C

Returns

T

VisitTryFinally(TryFinally, C)

protected virtual T VisitTryFinally(TryFinally inst, C context)

Parameters

inst TryFinally
context C

Returns

T

VisitUnbox(Unbox, C)

protected virtual T VisitUnbox(Unbox inst, C context)

Parameters

inst Unbox
context C

Returns

T

VisitUnboxAny(UnboxAny, C)

protected virtual T VisitUnboxAny(UnboxAny inst, C context)

Parameters

inst UnboxAny
context C

Returns

T

VisitUserDefinedCompoundAssign(UserDefinedCompoundAssign, C)

protected virtual T VisitUserDefinedCompoundAssign(UserDefinedCompoundAssign inst, C context)

Parameters

inst UserDefinedCompoundAssign
context C

Returns

T

VisitUserDefinedLogicOperator(UserDefinedLogicOperator, C)

protected virtual T VisitUserDefinedLogicOperator(UserDefinedLogicOperator inst, C context)

Parameters

inst UserDefinedLogicOperator
context C

Returns

T

VisitUsingInstruction(UsingInstruction, C)

protected virtual T VisitUsingInstruction(UsingInstruction inst, C context)

Parameters

inst UsingInstruction
context C

Returns

T

VisitYieldReturn(YieldReturn, C)

protected virtual T VisitYieldReturn(YieldReturn inst, C context)

Parameters

inst YieldReturn
context C

Returns

T