Table of Contents

Interface IAstVisitor

Namespace
ICSharpCode.Decompiler.CSharp.Syntax
Assembly
ICSharpCode.Decompiler.dll

AST visitor.

public interface IAstVisitor

Methods

VisitAccessor(Accessor)

void VisitAccessor(Accessor accessor)

Parameters

accessor Accessor

VisitAnonymousMethodExpression(AnonymousMethodExpression)

void VisitAnonymousMethodExpression(AnonymousMethodExpression anonymousMethodExpression)

Parameters

anonymousMethodExpression AnonymousMethodExpression

VisitAnonymousTypeCreateExpression(AnonymousTypeCreateExpression)

void VisitAnonymousTypeCreateExpression(AnonymousTypeCreateExpression anonymousTypeCreateExpression)

Parameters

anonymousTypeCreateExpression AnonymousTypeCreateExpression

VisitArrayCreateExpression(ArrayCreateExpression)

void VisitArrayCreateExpression(ArrayCreateExpression arrayCreateExpression)

Parameters

arrayCreateExpression ArrayCreateExpression

VisitArrayInitializerExpression(ArrayInitializerExpression)

void VisitArrayInitializerExpression(ArrayInitializerExpression arrayInitializerExpression)

Parameters

arrayInitializerExpression ArrayInitializerExpression

VisitArraySpecifier(ArraySpecifier)

void VisitArraySpecifier(ArraySpecifier arraySpecifier)

Parameters

arraySpecifier ArraySpecifier

VisitAsExpression(AsExpression)

void VisitAsExpression(AsExpression asExpression)

Parameters

asExpression AsExpression

VisitAssignmentExpression(AssignmentExpression)

void VisitAssignmentExpression(AssignmentExpression assignmentExpression)

Parameters

assignmentExpression AssignmentExpression

VisitAttribute(Attribute)

void VisitAttribute(Attribute attribute)

Parameters

attribute Attribute

VisitAttributeSection(AttributeSection)

void VisitAttributeSection(AttributeSection attributeSection)

Parameters

attributeSection AttributeSection

VisitBaseReferenceExpression(BaseReferenceExpression)

void VisitBaseReferenceExpression(BaseReferenceExpression baseReferenceExpression)

Parameters

baseReferenceExpression BaseReferenceExpression

VisitBinaryOperatorExpression(BinaryOperatorExpression)

void VisitBinaryOperatorExpression(BinaryOperatorExpression binaryOperatorExpression)

Parameters

binaryOperatorExpression BinaryOperatorExpression

VisitBlockStatement(BlockStatement)

void VisitBlockStatement(BlockStatement blockStatement)

Parameters

blockStatement BlockStatement

VisitBreakStatement(BreakStatement)

void VisitBreakStatement(BreakStatement breakStatement)

Parameters

breakStatement BreakStatement

VisitCSharpTokenNode(CSharpTokenNode)

void VisitCSharpTokenNode(CSharpTokenNode cSharpTokenNode)

Parameters

cSharpTokenNode CSharpTokenNode

VisitCaseLabel(CaseLabel)

void VisitCaseLabel(CaseLabel caseLabel)

Parameters

caseLabel CaseLabel

VisitCastExpression(CastExpression)

void VisitCastExpression(CastExpression castExpression)

Parameters

castExpression CastExpression

VisitCatchClause(CatchClause)

void VisitCatchClause(CatchClause catchClause)

Parameters

catchClause CatchClause

VisitCheckedExpression(CheckedExpression)

void VisitCheckedExpression(CheckedExpression checkedExpression)

Parameters

checkedExpression CheckedExpression

VisitCheckedStatement(CheckedStatement)

void VisitCheckedStatement(CheckedStatement checkedStatement)

Parameters

checkedStatement CheckedStatement

VisitComment(Comment)

void VisitComment(Comment comment)

Parameters

comment Comment

VisitComposedType(ComposedType)

void VisitComposedType(ComposedType composedType)

Parameters

composedType ComposedType

VisitConditionalExpression(ConditionalExpression)

void VisitConditionalExpression(ConditionalExpression conditionalExpression)

Parameters

conditionalExpression ConditionalExpression

VisitConstraint(Constraint)

void VisitConstraint(Constraint constraint)

Parameters

constraint Constraint

VisitConstructorDeclaration(ConstructorDeclaration)

void VisitConstructorDeclaration(ConstructorDeclaration constructorDeclaration)

Parameters

constructorDeclaration ConstructorDeclaration

VisitConstructorInitializer(ConstructorInitializer)

void VisitConstructorInitializer(ConstructorInitializer constructorInitializer)

Parameters

constructorInitializer ConstructorInitializer

VisitContinueStatement(ContinueStatement)

void VisitContinueStatement(ContinueStatement continueStatement)

Parameters

continueStatement ContinueStatement

VisitCustomEventDeclaration(CustomEventDeclaration)

void VisitCustomEventDeclaration(CustomEventDeclaration customEventDeclaration)

Parameters

customEventDeclaration CustomEventDeclaration

VisitDeclarationExpression(DeclarationExpression)

void VisitDeclarationExpression(DeclarationExpression declarationExpression)

Parameters

declarationExpression DeclarationExpression

VisitDefaultValueExpression(DefaultValueExpression)

void VisitDefaultValueExpression(DefaultValueExpression defaultValueExpression)

Parameters

defaultValueExpression DefaultValueExpression

VisitDelegateDeclaration(DelegateDeclaration)

void VisitDelegateDeclaration(DelegateDeclaration delegateDeclaration)

Parameters

delegateDeclaration DelegateDeclaration

VisitDestructorDeclaration(DestructorDeclaration)

void VisitDestructorDeclaration(DestructorDeclaration destructorDeclaration)

Parameters

destructorDeclaration DestructorDeclaration

VisitDirectionExpression(DirectionExpression)

void VisitDirectionExpression(DirectionExpression directionExpression)

Parameters

directionExpression DirectionExpression

VisitDoWhileStatement(DoWhileStatement)

void VisitDoWhileStatement(DoWhileStatement doWhileStatement)

Parameters

doWhileStatement DoWhileStatement

VisitDocumentationReference(DocumentationReference)

void VisitDocumentationReference(DocumentationReference documentationReference)

Parameters

documentationReference DocumentationReference

VisitEmptyStatement(EmptyStatement)

void VisitEmptyStatement(EmptyStatement emptyStatement)

Parameters

emptyStatement EmptyStatement

VisitEnumMemberDeclaration(EnumMemberDeclaration)

void VisitEnumMemberDeclaration(EnumMemberDeclaration enumMemberDeclaration)

Parameters

enumMemberDeclaration EnumMemberDeclaration

VisitErrorNode(AstNode)

void VisitErrorNode(AstNode errorNode)

Parameters

errorNode AstNode

VisitEventDeclaration(EventDeclaration)

void VisitEventDeclaration(EventDeclaration eventDeclaration)

Parameters

eventDeclaration EventDeclaration

VisitExpressionStatement(ExpressionStatement)

void VisitExpressionStatement(ExpressionStatement expressionStatement)

Parameters

expressionStatement ExpressionStatement

VisitExternAliasDeclaration(ExternAliasDeclaration)

void VisitExternAliasDeclaration(ExternAliasDeclaration externAliasDeclaration)

Parameters

externAliasDeclaration ExternAliasDeclaration

VisitFieldDeclaration(FieldDeclaration)

void VisitFieldDeclaration(FieldDeclaration fieldDeclaration)

Parameters

fieldDeclaration FieldDeclaration

VisitFixedFieldDeclaration(FixedFieldDeclaration)

void VisitFixedFieldDeclaration(FixedFieldDeclaration fixedFieldDeclaration)

Parameters

fixedFieldDeclaration FixedFieldDeclaration

VisitFixedStatement(FixedStatement)

void VisitFixedStatement(FixedStatement fixedStatement)

Parameters

fixedStatement FixedStatement

VisitFixedVariableInitializer(FixedVariableInitializer)

void VisitFixedVariableInitializer(FixedVariableInitializer fixedVariableInitializer)

Parameters

fixedVariableInitializer FixedVariableInitializer

VisitForStatement(ForStatement)

void VisitForStatement(ForStatement forStatement)

Parameters

forStatement ForStatement

VisitForeachStatement(ForeachStatement)

void VisitForeachStatement(ForeachStatement foreachStatement)

Parameters

foreachStatement ForeachStatement

VisitFunctionPointerType(FunctionPointerAstType)

void VisitFunctionPointerType(FunctionPointerAstType functionPointerType)

Parameters

functionPointerType FunctionPointerAstType

VisitGotoCaseStatement(GotoCaseStatement)

void VisitGotoCaseStatement(GotoCaseStatement gotoCaseStatement)

Parameters

gotoCaseStatement GotoCaseStatement

VisitGotoDefaultStatement(GotoDefaultStatement)

void VisitGotoDefaultStatement(GotoDefaultStatement gotoDefaultStatement)

Parameters

gotoDefaultStatement GotoDefaultStatement

VisitGotoStatement(GotoStatement)

void VisitGotoStatement(GotoStatement gotoStatement)

Parameters

gotoStatement GotoStatement

VisitIdentifier(Identifier)

void VisitIdentifier(Identifier identifier)

Parameters

identifier Identifier

VisitIdentifierExpression(IdentifierExpression)

void VisitIdentifierExpression(IdentifierExpression identifierExpression)

Parameters

identifierExpression IdentifierExpression

VisitIfElseStatement(IfElseStatement)

void VisitIfElseStatement(IfElseStatement ifElseStatement)

Parameters

ifElseStatement IfElseStatement

VisitIndexerDeclaration(IndexerDeclaration)

void VisitIndexerDeclaration(IndexerDeclaration indexerDeclaration)

Parameters

indexerDeclaration IndexerDeclaration

VisitIndexerExpression(IndexerExpression)

void VisitIndexerExpression(IndexerExpression indexerExpression)

Parameters

indexerExpression IndexerExpression

VisitInterpolatedStringExpression(InterpolatedStringExpression)

void VisitInterpolatedStringExpression(InterpolatedStringExpression interpolatedStringExpression)

Parameters

interpolatedStringExpression InterpolatedStringExpression

VisitInterpolatedStringText(InterpolatedStringText)

void VisitInterpolatedStringText(InterpolatedStringText interpolatedStringText)

Parameters

interpolatedStringText InterpolatedStringText

VisitInterpolation(Interpolation)

void VisitInterpolation(Interpolation interpolation)

Parameters

interpolation Interpolation

VisitInvocationExpression(InvocationExpression)

void VisitInvocationExpression(InvocationExpression invocationExpression)

Parameters

invocationExpression InvocationExpression

VisitInvocationType(InvocationAstType)

void VisitInvocationType(InvocationAstType invocationType)

Parameters

invocationType InvocationAstType

VisitIsExpression(IsExpression)

void VisitIsExpression(IsExpression isExpression)

Parameters

isExpression IsExpression

VisitLabelStatement(LabelStatement)

void VisitLabelStatement(LabelStatement labelStatement)

Parameters

labelStatement LabelStatement

VisitLambdaExpression(LambdaExpression)

void VisitLambdaExpression(LambdaExpression lambdaExpression)

Parameters

lambdaExpression LambdaExpression

VisitLocalFunctionDeclarationStatement(LocalFunctionDeclarationStatement)

void VisitLocalFunctionDeclarationStatement(LocalFunctionDeclarationStatement localFunctionDeclarationStatement)

Parameters

localFunctionDeclarationStatement LocalFunctionDeclarationStatement

VisitLockStatement(LockStatement)

void VisitLockStatement(LockStatement lockStatement)

Parameters

lockStatement LockStatement

VisitMemberReferenceExpression(MemberReferenceExpression)

void VisitMemberReferenceExpression(MemberReferenceExpression memberReferenceExpression)

Parameters

memberReferenceExpression MemberReferenceExpression

VisitMemberType(MemberType)

void VisitMemberType(MemberType memberType)

Parameters

memberType MemberType

VisitMethodDeclaration(MethodDeclaration)

void VisitMethodDeclaration(MethodDeclaration methodDeclaration)

Parameters

methodDeclaration MethodDeclaration

VisitNamedArgumentExpression(NamedArgumentExpression)

void VisitNamedArgumentExpression(NamedArgumentExpression namedArgumentExpression)

Parameters

namedArgumentExpression NamedArgumentExpression

VisitNamedExpression(NamedExpression)

void VisitNamedExpression(NamedExpression namedExpression)

Parameters

namedExpression NamedExpression

VisitNamespaceDeclaration(NamespaceDeclaration)

void VisitNamespaceDeclaration(NamespaceDeclaration namespaceDeclaration)

Parameters

namespaceDeclaration NamespaceDeclaration

VisitNullNode(AstNode)

void VisitNullNode(AstNode nullNode)

Parameters

nullNode AstNode

VisitNullReferenceExpression(NullReferenceExpression)

void VisitNullReferenceExpression(NullReferenceExpression nullReferenceExpression)

Parameters

nullReferenceExpression NullReferenceExpression

VisitObjectCreateExpression(ObjectCreateExpression)

void VisitObjectCreateExpression(ObjectCreateExpression objectCreateExpression)

Parameters

objectCreateExpression ObjectCreateExpression

VisitOperatorDeclaration(OperatorDeclaration)

void VisitOperatorDeclaration(OperatorDeclaration operatorDeclaration)

Parameters

operatorDeclaration OperatorDeclaration

VisitOutVarDeclarationExpression(OutVarDeclarationExpression)

void VisitOutVarDeclarationExpression(OutVarDeclarationExpression outVarDeclarationExpression)

Parameters

outVarDeclarationExpression OutVarDeclarationExpression

VisitParameterDeclaration(ParameterDeclaration)

void VisitParameterDeclaration(ParameterDeclaration parameterDeclaration)

Parameters

parameterDeclaration ParameterDeclaration

VisitParenthesizedExpression(ParenthesizedExpression)

void VisitParenthesizedExpression(ParenthesizedExpression parenthesizedExpression)

Parameters

parenthesizedExpression ParenthesizedExpression

VisitParenthesizedVariableDesignation(ParenthesizedVariableDesignation)

void VisitParenthesizedVariableDesignation(ParenthesizedVariableDesignation parenthesizedVariableDesignation)

Parameters

parenthesizedVariableDesignation ParenthesizedVariableDesignation

VisitPatternPlaceholder(AstNode, Pattern)

void VisitPatternPlaceholder(AstNode placeholder, Pattern pattern)

Parameters

placeholder AstNode
pattern Pattern

VisitPointerReferenceExpression(PointerReferenceExpression)

void VisitPointerReferenceExpression(PointerReferenceExpression pointerReferenceExpression)

Parameters

pointerReferenceExpression PointerReferenceExpression

VisitPreProcessorDirective(PreProcessorDirective)

void VisitPreProcessorDirective(PreProcessorDirective preProcessorDirective)

Parameters

preProcessorDirective PreProcessorDirective

VisitPrimitiveExpression(PrimitiveExpression)

void VisitPrimitiveExpression(PrimitiveExpression primitiveExpression)

Parameters

primitiveExpression PrimitiveExpression

VisitPrimitiveType(PrimitiveType)

void VisitPrimitiveType(PrimitiveType primitiveType)

Parameters

primitiveType PrimitiveType

VisitPropertyDeclaration(PropertyDeclaration)

void VisitPropertyDeclaration(PropertyDeclaration propertyDeclaration)

Parameters

propertyDeclaration PropertyDeclaration

VisitQueryContinuationClause(QueryContinuationClause)

void VisitQueryContinuationClause(QueryContinuationClause queryContinuationClause)

Parameters

queryContinuationClause QueryContinuationClause

VisitQueryExpression(QueryExpression)

void VisitQueryExpression(QueryExpression queryExpression)

Parameters

queryExpression QueryExpression

VisitQueryFromClause(QueryFromClause)

void VisitQueryFromClause(QueryFromClause queryFromClause)

Parameters

queryFromClause QueryFromClause

VisitQueryGroupClause(QueryGroupClause)

void VisitQueryGroupClause(QueryGroupClause queryGroupClause)

Parameters

queryGroupClause QueryGroupClause

VisitQueryJoinClause(QueryJoinClause)

void VisitQueryJoinClause(QueryJoinClause queryJoinClause)

Parameters

queryJoinClause QueryJoinClause

VisitQueryLetClause(QueryLetClause)

void VisitQueryLetClause(QueryLetClause queryLetClause)

Parameters

queryLetClause QueryLetClause

VisitQueryOrderClause(QueryOrderClause)

void VisitQueryOrderClause(QueryOrderClause queryOrderClause)

Parameters

queryOrderClause QueryOrderClause

VisitQueryOrdering(QueryOrdering)

void VisitQueryOrdering(QueryOrdering queryOrdering)

Parameters

queryOrdering QueryOrdering

VisitQuerySelectClause(QuerySelectClause)

void VisitQuerySelectClause(QuerySelectClause querySelectClause)

Parameters

querySelectClause QuerySelectClause

VisitQueryWhereClause(QueryWhereClause)

void VisitQueryWhereClause(QueryWhereClause queryWhereClause)

Parameters

queryWhereClause QueryWhereClause

VisitRecursivePatternExpression(RecursivePatternExpression)

void VisitRecursivePatternExpression(RecursivePatternExpression recursivePatternExpression)

Parameters

recursivePatternExpression RecursivePatternExpression

VisitReturnStatement(ReturnStatement)

void VisitReturnStatement(ReturnStatement returnStatement)

Parameters

returnStatement ReturnStatement

VisitSimpleType(SimpleType)

void VisitSimpleType(SimpleType simpleType)

Parameters

simpleType SimpleType

VisitSingleVariableDesignation(SingleVariableDesignation)

void VisitSingleVariableDesignation(SingleVariableDesignation singleVariableDesignation)

Parameters

singleVariableDesignation SingleVariableDesignation

VisitSizeOfExpression(SizeOfExpression)

void VisitSizeOfExpression(SizeOfExpression sizeOfExpression)

Parameters

sizeOfExpression SizeOfExpression

VisitStackAllocExpression(StackAllocExpression)

void VisitStackAllocExpression(StackAllocExpression stackAllocExpression)

Parameters

stackAllocExpression StackAllocExpression

VisitSwitchExpression(SwitchExpression)

void VisitSwitchExpression(SwitchExpression switchExpression)

Parameters

switchExpression SwitchExpression

VisitSwitchExpressionSection(SwitchExpressionSection)

void VisitSwitchExpressionSection(SwitchExpressionSection switchExpressionSection)

Parameters

switchExpressionSection SwitchExpressionSection

VisitSwitchSection(SwitchSection)

void VisitSwitchSection(SwitchSection switchSection)

Parameters

switchSection SwitchSection

VisitSwitchStatement(SwitchStatement)

void VisitSwitchStatement(SwitchStatement switchStatement)

Parameters

switchStatement SwitchStatement

VisitSyntaxTree(SyntaxTree)

void VisitSyntaxTree(SyntaxTree syntaxTree)

Parameters

syntaxTree SyntaxTree

VisitThisReferenceExpression(ThisReferenceExpression)

void VisitThisReferenceExpression(ThisReferenceExpression thisReferenceExpression)

Parameters

thisReferenceExpression ThisReferenceExpression

VisitThrowExpression(ThrowExpression)

void VisitThrowExpression(ThrowExpression throwExpression)

Parameters

throwExpression ThrowExpression

VisitThrowStatement(ThrowStatement)

void VisitThrowStatement(ThrowStatement throwStatement)

Parameters

throwStatement ThrowStatement

VisitTryCatchStatement(TryCatchStatement)

void VisitTryCatchStatement(TryCatchStatement tryCatchStatement)

Parameters

tryCatchStatement TryCatchStatement

VisitTupleExpression(TupleExpression)

void VisitTupleExpression(TupleExpression tupleExpression)

Parameters

tupleExpression TupleExpression

VisitTupleType(TupleAstType)

void VisitTupleType(TupleAstType tupleType)

Parameters

tupleType TupleAstType

VisitTupleTypeElement(TupleTypeElement)

void VisitTupleTypeElement(TupleTypeElement tupleTypeElement)

Parameters

tupleTypeElement TupleTypeElement

VisitTypeDeclaration(TypeDeclaration)

void VisitTypeDeclaration(TypeDeclaration typeDeclaration)

Parameters

typeDeclaration TypeDeclaration

VisitTypeOfExpression(TypeOfExpression)

void VisitTypeOfExpression(TypeOfExpression typeOfExpression)

Parameters

typeOfExpression TypeOfExpression

VisitTypeParameterDeclaration(TypeParameterDeclaration)

void VisitTypeParameterDeclaration(TypeParameterDeclaration typeParameterDeclaration)

Parameters

typeParameterDeclaration TypeParameterDeclaration

VisitTypeReferenceExpression(TypeReferenceExpression)

void VisitTypeReferenceExpression(TypeReferenceExpression typeReferenceExpression)

Parameters

typeReferenceExpression TypeReferenceExpression

VisitUnaryOperatorExpression(UnaryOperatorExpression)

void VisitUnaryOperatorExpression(UnaryOperatorExpression unaryOperatorExpression)

Parameters

unaryOperatorExpression UnaryOperatorExpression

VisitUncheckedExpression(UncheckedExpression)

void VisitUncheckedExpression(UncheckedExpression uncheckedExpression)

Parameters

uncheckedExpression UncheckedExpression

VisitUncheckedStatement(UncheckedStatement)

void VisitUncheckedStatement(UncheckedStatement uncheckedStatement)

Parameters

uncheckedStatement UncheckedStatement

VisitUndocumentedExpression(UndocumentedExpression)

void VisitUndocumentedExpression(UndocumentedExpression undocumentedExpression)

Parameters

undocumentedExpression UndocumentedExpression

VisitUnsafeStatement(UnsafeStatement)

void VisitUnsafeStatement(UnsafeStatement unsafeStatement)

Parameters

unsafeStatement UnsafeStatement

VisitUsingAliasDeclaration(UsingAliasDeclaration)

void VisitUsingAliasDeclaration(UsingAliasDeclaration usingAliasDeclaration)

Parameters

usingAliasDeclaration UsingAliasDeclaration

VisitUsingDeclaration(UsingDeclaration)

void VisitUsingDeclaration(UsingDeclaration usingDeclaration)

Parameters

usingDeclaration UsingDeclaration

VisitUsingStatement(UsingStatement)

void VisitUsingStatement(UsingStatement usingStatement)

Parameters

usingStatement UsingStatement

VisitVariableDeclarationStatement(VariableDeclarationStatement)

void VisitVariableDeclarationStatement(VariableDeclarationStatement variableDeclarationStatement)

Parameters

variableDeclarationStatement VariableDeclarationStatement

VisitVariableInitializer(VariableInitializer)

void VisitVariableInitializer(VariableInitializer variableInitializer)

Parameters

variableInitializer VariableInitializer

VisitWhileStatement(WhileStatement)

void VisitWhileStatement(WhileStatement whileStatement)

Parameters

whileStatement WhileStatement

VisitWithInitializerExpression(WithInitializerExpression)

void VisitWithInitializerExpression(WithInitializerExpression withInitializerExpression)

Parameters

withInitializerExpression WithInitializerExpression

VisitYieldBreakStatement(YieldBreakStatement)

void VisitYieldBreakStatement(YieldBreakStatement yieldBreakStatement)

Parameters

yieldBreakStatement YieldBreakStatement

VisitYieldReturnStatement(YieldReturnStatement)

void VisitYieldReturnStatement(YieldReturnStatement yieldReturnStatement)

Parameters

yieldReturnStatement YieldReturnStatement