mirror of https://github.com/icsharpcode/ILSpy.git
12 changed files with 0 additions and 620 deletions
@ -1,468 +0,0 @@ |
|||||||
// Copyright (c) 2010-2013 AlphaSierraPapa for the SharpDevelop Team
|
|
||||||
//
|
|
||||||
// Permission is hereby granted, free of charge, to any person obtaining a copy of this
|
|
||||||
// software and associated documentation files (the "Software"), to deal in the Software
|
|
||||||
// without restriction, including without limitation the rights to use, copy, modify, merge,
|
|
||||||
// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
|
|
||||||
// to whom the Software is furnished to do so, subject to the following conditions:
|
|
||||||
//
|
|
||||||
// The above copyright notice and this permission notice shall be included in all copies or
|
|
||||||
// substantial portions of the Software.
|
|
||||||
//
|
|
||||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
|
|
||||||
// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
|
|
||||||
// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
|
|
||||||
// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
|
|
||||||
// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
|
||||||
// DEALINGS IN THE SOFTWARE.
|
|
||||||
|
|
||||||
|
|
||||||
namespace ICSharpCode.Decompiler.CSharp.Syntax |
|
||||||
{ |
|
||||||
/// <summary>
|
|
||||||
/// AST visitor.
|
|
||||||
/// </summary>
|
|
||||||
public interface IAstVisitor |
|
||||||
{ |
|
||||||
void VisitAnonymousMethodExpression(AnonymousMethodExpression anonymousMethodExpression); |
|
||||||
void VisitAnonymousTypeCreateExpression(AnonymousTypeCreateExpression anonymousTypeCreateExpression); |
|
||||||
void VisitArrayCreateExpression(ArrayCreateExpression arrayCreateExpression); |
|
||||||
void VisitArrayInitializerExpression(ArrayInitializerExpression arrayInitializerExpression); |
|
||||||
void VisitAsExpression(AsExpression asExpression); |
|
||||||
void VisitAssignmentExpression(AssignmentExpression assignmentExpression); |
|
||||||
void VisitBaseReferenceExpression(BaseReferenceExpression baseReferenceExpression); |
|
||||||
void VisitBinaryOperatorExpression(BinaryOperatorExpression binaryOperatorExpression); |
|
||||||
void VisitCastExpression(CastExpression castExpression); |
|
||||||
void VisitCheckedExpression(CheckedExpression checkedExpression); |
|
||||||
void VisitConditionalExpression(ConditionalExpression conditionalExpression); |
|
||||||
void VisitDeclarationExpression(DeclarationExpression declarationExpression); |
|
||||||
void VisitRecursivePatternExpression(RecursivePatternExpression recursivePatternExpression); |
|
||||||
void VisitDefaultValueExpression(DefaultValueExpression defaultValueExpression); |
|
||||||
void VisitDirectionExpression(DirectionExpression directionExpression); |
|
||||||
void VisitIdentifierExpression(IdentifierExpression identifierExpression); |
|
||||||
void VisitIndexerExpression(IndexerExpression indexerExpression); |
|
||||||
void VisitInterpolatedStringExpression(InterpolatedStringExpression interpolatedStringExpression); |
|
||||||
void VisitInvocationExpression(InvocationExpression invocationExpression); |
|
||||||
void VisitIsExpression(IsExpression isExpression); |
|
||||||
void VisitLambdaExpression(LambdaExpression lambdaExpression); |
|
||||||
void VisitMemberReferenceExpression(MemberReferenceExpression memberReferenceExpression); |
|
||||||
void VisitNamedArgumentExpression(NamedArgumentExpression namedArgumentExpression); |
|
||||||
void VisitNamedExpression(NamedExpression namedExpression); |
|
||||||
void VisitNullReferenceExpression(NullReferenceExpression nullReferenceExpression); |
|
||||||
void VisitObjectCreateExpression(ObjectCreateExpression objectCreateExpression); |
|
||||||
void VisitOutVarDeclarationExpression(OutVarDeclarationExpression outVarDeclarationExpression); |
|
||||||
void VisitParenthesizedExpression(ParenthesizedExpression parenthesizedExpression); |
|
||||||
void VisitPointerReferenceExpression(PointerReferenceExpression pointerReferenceExpression); |
|
||||||
void VisitPrimitiveExpression(PrimitiveExpression primitiveExpression); |
|
||||||
void VisitSizeOfExpression(SizeOfExpression sizeOfExpression); |
|
||||||
void VisitStackAllocExpression(StackAllocExpression stackAllocExpression); |
|
||||||
void VisitThisReferenceExpression(ThisReferenceExpression thisReferenceExpression); |
|
||||||
void VisitThrowExpression(ThrowExpression throwExpression); |
|
||||||
void VisitTupleExpression(TupleExpression tupleExpression); |
|
||||||
void VisitTypeOfExpression(TypeOfExpression typeOfExpression); |
|
||||||
void VisitTypeReferenceExpression(TypeReferenceExpression typeReferenceExpression); |
|
||||||
void VisitUnaryOperatorExpression(UnaryOperatorExpression unaryOperatorExpression); |
|
||||||
void VisitUncheckedExpression(UncheckedExpression uncheckedExpression); |
|
||||||
void VisitUndocumentedExpression(UndocumentedExpression undocumentedExpression); |
|
||||||
void VisitWithInitializerExpression(WithInitializerExpression withInitializerExpression); |
|
||||||
|
|
||||||
void VisitQueryExpression(QueryExpression queryExpression); |
|
||||||
void VisitQueryContinuationClause(QueryContinuationClause queryContinuationClause); |
|
||||||
void VisitQueryFromClause(QueryFromClause queryFromClause); |
|
||||||
void VisitQueryLetClause(QueryLetClause queryLetClause); |
|
||||||
void VisitQueryWhereClause(QueryWhereClause queryWhereClause); |
|
||||||
void VisitQueryJoinClause(QueryJoinClause queryJoinClause); |
|
||||||
void VisitQueryOrderClause(QueryOrderClause queryOrderClause); |
|
||||||
void VisitQueryOrdering(QueryOrdering queryOrdering); |
|
||||||
void VisitQuerySelectClause(QuerySelectClause querySelectClause); |
|
||||||
void VisitQueryGroupClause(QueryGroupClause queryGroupClause); |
|
||||||
|
|
||||||
void VisitAttribute(Attribute attribute); |
|
||||||
void VisitAttributeSection(AttributeSection attributeSection); |
|
||||||
void VisitDelegateDeclaration(DelegateDeclaration delegateDeclaration); |
|
||||||
void VisitNamespaceDeclaration(NamespaceDeclaration namespaceDeclaration); |
|
||||||
void VisitTypeDeclaration(TypeDeclaration typeDeclaration); |
|
||||||
void VisitUsingAliasDeclaration(UsingAliasDeclaration usingAliasDeclaration); |
|
||||||
void VisitUsingDeclaration(UsingDeclaration usingDeclaration); |
|
||||||
void VisitExternAliasDeclaration(ExternAliasDeclaration externAliasDeclaration); |
|
||||||
|
|
||||||
void VisitBlockStatement(BlockStatement blockStatement); |
|
||||||
void VisitBreakStatement(BreakStatement breakStatement); |
|
||||||
void VisitCheckedStatement(CheckedStatement checkedStatement); |
|
||||||
void VisitContinueStatement(ContinueStatement continueStatement); |
|
||||||
void VisitDoWhileStatement(DoWhileStatement doWhileStatement); |
|
||||||
void VisitEmptyStatement(EmptyStatement emptyStatement); |
|
||||||
void VisitExpressionStatement(ExpressionStatement expressionStatement); |
|
||||||
void VisitFixedStatement(FixedStatement fixedStatement); |
|
||||||
void VisitForeachStatement(ForeachStatement foreachStatement); |
|
||||||
void VisitForStatement(ForStatement forStatement); |
|
||||||
void VisitGotoCaseStatement(GotoCaseStatement gotoCaseStatement); |
|
||||||
void VisitGotoDefaultStatement(GotoDefaultStatement gotoDefaultStatement); |
|
||||||
void VisitGotoStatement(GotoStatement gotoStatement); |
|
||||||
void VisitIfElseStatement(IfElseStatement ifElseStatement); |
|
||||||
void VisitLabelStatement(LabelStatement labelStatement); |
|
||||||
void VisitLockStatement(LockStatement lockStatement); |
|
||||||
void VisitReturnStatement(ReturnStatement returnStatement); |
|
||||||
void VisitSwitchStatement(SwitchStatement switchStatement); |
|
||||||
void VisitSwitchSection(SwitchSection switchSection); |
|
||||||
void VisitCaseLabel(CaseLabel caseLabel); |
|
||||||
void VisitSwitchExpression(SwitchExpression switchExpression); |
|
||||||
void VisitSwitchExpressionSection(SwitchExpressionSection switchExpressionSection); |
|
||||||
void VisitThrowStatement(ThrowStatement throwStatement); |
|
||||||
void VisitTryCatchStatement(TryCatchStatement tryCatchStatement); |
|
||||||
void VisitCatchClause(CatchClause catchClause); |
|
||||||
void VisitUncheckedStatement(UncheckedStatement uncheckedStatement); |
|
||||||
void VisitUnsafeStatement(UnsafeStatement unsafeStatement); |
|
||||||
void VisitUsingStatement(UsingStatement usingStatement); |
|
||||||
void VisitVariableDeclarationStatement(VariableDeclarationStatement variableDeclarationStatement); |
|
||||||
void VisitLocalFunctionDeclarationStatement(LocalFunctionDeclarationStatement localFunctionDeclarationStatement); |
|
||||||
void VisitWhileStatement(WhileStatement whileStatement); |
|
||||||
void VisitYieldBreakStatement(YieldBreakStatement yieldBreakStatement); |
|
||||||
void VisitYieldReturnStatement(YieldReturnStatement yieldReturnStatement); |
|
||||||
|
|
||||||
void VisitAccessor(Accessor accessor); |
|
||||||
void VisitConstructorDeclaration(ConstructorDeclaration constructorDeclaration); |
|
||||||
void VisitConstructorInitializer(ConstructorInitializer constructorInitializer); |
|
||||||
void VisitDestructorDeclaration(DestructorDeclaration destructorDeclaration); |
|
||||||
void VisitEnumMemberDeclaration(EnumMemberDeclaration enumMemberDeclaration); |
|
||||||
void VisitEventDeclaration(EventDeclaration eventDeclaration); |
|
||||||
void VisitCustomEventDeclaration(CustomEventDeclaration customEventDeclaration); |
|
||||||
void VisitFieldDeclaration(FieldDeclaration fieldDeclaration); |
|
||||||
void VisitIndexerDeclaration(IndexerDeclaration indexerDeclaration); |
|
||||||
void VisitMethodDeclaration(MethodDeclaration methodDeclaration); |
|
||||||
void VisitOperatorDeclaration(OperatorDeclaration operatorDeclaration); |
|
||||||
void VisitParameterDeclaration(ParameterDeclaration parameterDeclaration); |
|
||||||
void VisitPropertyDeclaration(PropertyDeclaration propertyDeclaration); |
|
||||||
void VisitVariableInitializer(VariableInitializer variableInitializer); |
|
||||||
void VisitFixedFieldDeclaration(FixedFieldDeclaration fixedFieldDeclaration); |
|
||||||
void VisitFixedVariableInitializer(FixedVariableInitializer fixedVariableInitializer); |
|
||||||
|
|
||||||
void VisitSyntaxTree(SyntaxTree syntaxTree); |
|
||||||
void VisitSimpleType(SimpleType simpleType); |
|
||||||
void VisitMemberType(MemberType memberType); |
|
||||||
void VisitTupleType(TupleAstType tupleType); |
|
||||||
void VisitTupleTypeElement(TupleTypeElement tupleTypeElement); |
|
||||||
void VisitFunctionPointerType(FunctionPointerAstType functionPointerType); |
|
||||||
void VisitInvocationType(InvocationAstType invocationType); |
|
||||||
void VisitComposedType(ComposedType composedType); |
|
||||||
void VisitArraySpecifier(ArraySpecifier arraySpecifier); |
|
||||||
void VisitPrimitiveType(PrimitiveType primitiveType); |
|
||||||
|
|
||||||
void VisitComment(Comment comment); |
|
||||||
void VisitPreProcessorDirective(PreProcessorDirective preProcessorDirective); |
|
||||||
void VisitDocumentationReference(DocumentationReference documentationReference); |
|
||||||
|
|
||||||
void VisitTypeParameterDeclaration(TypeParameterDeclaration typeParameterDeclaration); |
|
||||||
void VisitConstraint(Constraint constraint); |
|
||||||
void VisitCSharpTokenNode(CSharpTokenNode cSharpTokenNode); |
|
||||||
void VisitIdentifier(Identifier identifier); |
|
||||||
|
|
||||||
void VisitInterpolation(Interpolation interpolation); |
|
||||||
void VisitInterpolatedStringText(InterpolatedStringText interpolatedStringText); |
|
||||||
|
|
||||||
void VisitSingleVariableDesignation(SingleVariableDesignation singleVariableDesignation); |
|
||||||
void VisitParenthesizedVariableDesignation(ParenthesizedVariableDesignation parenthesizedVariableDesignation); |
|
||||||
|
|
||||||
void VisitNullNode(AstNode nullNode); |
|
||||||
void VisitErrorNode(AstNode errorNode); |
|
||||||
void VisitPatternPlaceholder(AstNode placeholder, PatternMatching.Pattern pattern); |
|
||||||
} |
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// AST visitor.
|
|
||||||
/// </summary>
|
|
||||||
public interface IAstVisitor<out S> |
|
||||||
{ |
|
||||||
S VisitAnonymousMethodExpression(AnonymousMethodExpression anonymousMethodExpression); |
|
||||||
S VisitAnonymousTypeCreateExpression(AnonymousTypeCreateExpression anonymousTypeCreateExpression); |
|
||||||
S VisitArrayCreateExpression(ArrayCreateExpression arrayCreateExpression); |
|
||||||
S VisitArrayInitializerExpression(ArrayInitializerExpression arrayInitializerExpression); |
|
||||||
S VisitAsExpression(AsExpression asExpression); |
|
||||||
S VisitAssignmentExpression(AssignmentExpression assignmentExpression); |
|
||||||
S VisitBaseReferenceExpression(BaseReferenceExpression baseReferenceExpression); |
|
||||||
S VisitBinaryOperatorExpression(BinaryOperatorExpression binaryOperatorExpression); |
|
||||||
S VisitCastExpression(CastExpression castExpression); |
|
||||||
S VisitCheckedExpression(CheckedExpression checkedExpression); |
|
||||||
S VisitConditionalExpression(ConditionalExpression conditionalExpression); |
|
||||||
S VisitDeclarationExpression(DeclarationExpression declarationExpression); |
|
||||||
S VisitRecursivePatternExpression(RecursivePatternExpression recursivePatternExpression); |
|
||||||
S VisitDefaultValueExpression(DefaultValueExpression defaultValueExpression); |
|
||||||
S VisitDirectionExpression(DirectionExpression directionExpression); |
|
||||||
S VisitIdentifierExpression(IdentifierExpression identifierExpression); |
|
||||||
S VisitIndexerExpression(IndexerExpression indexerExpression); |
|
||||||
S VisitInterpolatedStringExpression(InterpolatedStringExpression interpolatedStringExpression); |
|
||||||
S VisitInvocationExpression(InvocationExpression invocationExpression); |
|
||||||
S VisitIsExpression(IsExpression isExpression); |
|
||||||
S VisitLambdaExpression(LambdaExpression lambdaExpression); |
|
||||||
S VisitMemberReferenceExpression(MemberReferenceExpression memberReferenceExpression); |
|
||||||
S VisitNamedArgumentExpression(NamedArgumentExpression namedArgumentExpression); |
|
||||||
S VisitNamedExpression(NamedExpression namedExpression); |
|
||||||
S VisitNullReferenceExpression(NullReferenceExpression nullReferenceExpression); |
|
||||||
S VisitObjectCreateExpression(ObjectCreateExpression objectCreateExpression); |
|
||||||
S VisitOutVarDeclarationExpression(OutVarDeclarationExpression outVarDeclarationExpression); |
|
||||||
S VisitParenthesizedExpression(ParenthesizedExpression parenthesizedExpression); |
|
||||||
S VisitPointerReferenceExpression(PointerReferenceExpression pointerReferenceExpression); |
|
||||||
S VisitPrimitiveExpression(PrimitiveExpression primitiveExpression); |
|
||||||
S VisitSizeOfExpression(SizeOfExpression sizeOfExpression); |
|
||||||
S VisitStackAllocExpression(StackAllocExpression stackAllocExpression); |
|
||||||
S VisitThisReferenceExpression(ThisReferenceExpression thisReferenceExpression); |
|
||||||
S VisitThrowExpression(ThrowExpression throwExpression); |
|
||||||
S VisitTupleExpression(TupleExpression tupleExpression); |
|
||||||
S VisitTypeOfExpression(TypeOfExpression typeOfExpression); |
|
||||||
S VisitTypeReferenceExpression(TypeReferenceExpression typeReferenceExpression); |
|
||||||
S VisitUnaryOperatorExpression(UnaryOperatorExpression unaryOperatorExpression); |
|
||||||
S VisitUncheckedExpression(UncheckedExpression uncheckedExpression); |
|
||||||
S VisitUndocumentedExpression(UndocumentedExpression undocumentedExpression); |
|
||||||
S VisitWithInitializerExpression(WithInitializerExpression withInitializerExpression); |
|
||||||
|
|
||||||
S VisitQueryExpression(QueryExpression queryExpression); |
|
||||||
S VisitQueryContinuationClause(QueryContinuationClause queryContinuationClause); |
|
||||||
S VisitQueryFromClause(QueryFromClause queryFromClause); |
|
||||||
S VisitQueryLetClause(QueryLetClause queryLetClause); |
|
||||||
S VisitQueryWhereClause(QueryWhereClause queryWhereClause); |
|
||||||
S VisitQueryJoinClause(QueryJoinClause queryJoinClause); |
|
||||||
S VisitQueryOrderClause(QueryOrderClause queryOrderClause); |
|
||||||
S VisitQueryOrdering(QueryOrdering queryOrdering); |
|
||||||
S VisitQuerySelectClause(QuerySelectClause querySelectClause); |
|
||||||
S VisitQueryGroupClause(QueryGroupClause queryGroupClause); |
|
||||||
|
|
||||||
S VisitAttribute(Attribute attribute); |
|
||||||
S VisitAttributeSection(AttributeSection attributeSection); |
|
||||||
S VisitDelegateDeclaration(DelegateDeclaration delegateDeclaration); |
|
||||||
S VisitNamespaceDeclaration(NamespaceDeclaration namespaceDeclaration); |
|
||||||
S VisitTypeDeclaration(TypeDeclaration typeDeclaration); |
|
||||||
S VisitUsingAliasDeclaration(UsingAliasDeclaration usingAliasDeclaration); |
|
||||||
S VisitUsingDeclaration(UsingDeclaration usingDeclaration); |
|
||||||
S VisitExternAliasDeclaration(ExternAliasDeclaration externAliasDeclaration); |
|
||||||
|
|
||||||
S VisitBlockStatement(BlockStatement blockStatement); |
|
||||||
S VisitBreakStatement(BreakStatement breakStatement); |
|
||||||
S VisitCheckedStatement(CheckedStatement checkedStatement); |
|
||||||
S VisitContinueStatement(ContinueStatement continueStatement); |
|
||||||
S VisitDoWhileStatement(DoWhileStatement doWhileStatement); |
|
||||||
S VisitEmptyStatement(EmptyStatement emptyStatement); |
|
||||||
S VisitExpressionStatement(ExpressionStatement expressionStatement); |
|
||||||
S VisitFixedStatement(FixedStatement fixedStatement); |
|
||||||
S VisitForeachStatement(ForeachStatement foreachStatement); |
|
||||||
S VisitForStatement(ForStatement forStatement); |
|
||||||
S VisitGotoCaseStatement(GotoCaseStatement gotoCaseStatement); |
|
||||||
S VisitGotoDefaultStatement(GotoDefaultStatement gotoDefaultStatement); |
|
||||||
S VisitGotoStatement(GotoStatement gotoStatement); |
|
||||||
S VisitIfElseStatement(IfElseStatement ifElseStatement); |
|
||||||
S VisitLabelStatement(LabelStatement labelStatement); |
|
||||||
S VisitLockStatement(LockStatement lockStatement); |
|
||||||
S VisitReturnStatement(ReturnStatement returnStatement); |
|
||||||
S VisitSwitchStatement(SwitchStatement switchStatement); |
|
||||||
S VisitSwitchSection(SwitchSection switchSection); |
|
||||||
S VisitCaseLabel(CaseLabel caseLabel); |
|
||||||
S VisitSwitchExpression(SwitchExpression switchExpression); |
|
||||||
S VisitSwitchExpressionSection(SwitchExpressionSection switchExpressionSection); |
|
||||||
S VisitThrowStatement(ThrowStatement throwStatement); |
|
||||||
S VisitTryCatchStatement(TryCatchStatement tryCatchStatement); |
|
||||||
S VisitCatchClause(CatchClause catchClause); |
|
||||||
S VisitUncheckedStatement(UncheckedStatement uncheckedStatement); |
|
||||||
S VisitUnsafeStatement(UnsafeStatement unsafeStatement); |
|
||||||
S VisitUsingStatement(UsingStatement usingStatement); |
|
||||||
S VisitVariableDeclarationStatement(VariableDeclarationStatement variableDeclarationStatement); |
|
||||||
S VisitLocalFunctionDeclarationStatement(LocalFunctionDeclarationStatement localFunctionDeclarationStatement); |
|
||||||
S VisitWhileStatement(WhileStatement whileStatement); |
|
||||||
S VisitYieldBreakStatement(YieldBreakStatement yieldBreakStatement); |
|
||||||
S VisitYieldReturnStatement(YieldReturnStatement yieldReturnStatement); |
|
||||||
|
|
||||||
S VisitAccessor(Accessor accessor); |
|
||||||
S VisitConstructorDeclaration(ConstructorDeclaration constructorDeclaration); |
|
||||||
S VisitConstructorInitializer(ConstructorInitializer constructorInitializer); |
|
||||||
S VisitDestructorDeclaration(DestructorDeclaration destructorDeclaration); |
|
||||||
S VisitEnumMemberDeclaration(EnumMemberDeclaration enumMemberDeclaration); |
|
||||||
S VisitEventDeclaration(EventDeclaration eventDeclaration); |
|
||||||
S VisitCustomEventDeclaration(CustomEventDeclaration customEventDeclaration); |
|
||||||
S VisitFieldDeclaration(FieldDeclaration fieldDeclaration); |
|
||||||
S VisitIndexerDeclaration(IndexerDeclaration indexerDeclaration); |
|
||||||
S VisitMethodDeclaration(MethodDeclaration methodDeclaration); |
|
||||||
S VisitOperatorDeclaration(OperatorDeclaration operatorDeclaration); |
|
||||||
S VisitParameterDeclaration(ParameterDeclaration parameterDeclaration); |
|
||||||
S VisitPropertyDeclaration(PropertyDeclaration propertyDeclaration); |
|
||||||
S VisitVariableInitializer(VariableInitializer variableInitializer); |
|
||||||
S VisitFixedFieldDeclaration(FixedFieldDeclaration fixedFieldDeclaration); |
|
||||||
S VisitFixedVariableInitializer(FixedVariableInitializer fixedVariableInitializer); |
|
||||||
|
|
||||||
S VisitSyntaxTree(SyntaxTree syntaxTree); |
|
||||||
S VisitSimpleType(SimpleType simpleType); |
|
||||||
S VisitMemberType(MemberType memberType); |
|
||||||
S VisitTupleType(TupleAstType tupleType); |
|
||||||
S VisitTupleTypeElement(TupleTypeElement tupleTypeElement); |
|
||||||
S VisitFunctionPointerType(FunctionPointerAstType functionPointerType); |
|
||||||
S VisitInvocationType(InvocationAstType invocationType); |
|
||||||
S VisitComposedType(ComposedType composedType); |
|
||||||
S VisitArraySpecifier(ArraySpecifier arraySpecifier); |
|
||||||
S VisitPrimitiveType(PrimitiveType primitiveType); |
|
||||||
|
|
||||||
S VisitComment(Comment comment); |
|
||||||
S VisitPreProcessorDirective(PreProcessorDirective preProcessorDirective); |
|
||||||
S VisitDocumentationReference(DocumentationReference documentationReference); |
|
||||||
|
|
||||||
S VisitTypeParameterDeclaration(TypeParameterDeclaration typeParameterDeclaration); |
|
||||||
S VisitConstraint(Constraint constraint); |
|
||||||
S VisitCSharpTokenNode(CSharpTokenNode cSharpTokenNode); |
|
||||||
S VisitIdentifier(Identifier identifier); |
|
||||||
|
|
||||||
S VisitInterpolation(Interpolation interpolation); |
|
||||||
S VisitInterpolatedStringText(InterpolatedStringText interpolatedStringText); |
|
||||||
|
|
||||||
S VisitSingleVariableDesignation(SingleVariableDesignation singleVariableDesignation); |
|
||||||
S VisitParenthesizedVariableDesignation(ParenthesizedVariableDesignation parenthesizedVariableDesignation); |
|
||||||
|
|
||||||
S VisitNullNode(AstNode nullNode); |
|
||||||
S VisitErrorNode(AstNode errorNode); |
|
||||||
S VisitPatternPlaceholder(AstNode placeholder, PatternMatching.Pattern pattern); |
|
||||||
} |
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// AST visitor.
|
|
||||||
/// </summary>
|
|
||||||
public interface IAstVisitor<in T, out S> |
|
||||||
{ |
|
||||||
S VisitAnonymousMethodExpression(AnonymousMethodExpression anonymousMethodExpression, T data); |
|
||||||
S VisitAnonymousTypeCreateExpression(AnonymousTypeCreateExpression anonymousTypeCreateExpression, T data); |
|
||||||
S VisitArrayCreateExpression(ArrayCreateExpression arrayCreateExpression, T data); |
|
||||||
S VisitArrayInitializerExpression(ArrayInitializerExpression arrayInitializerExpression, T data); |
|
||||||
S VisitAsExpression(AsExpression asExpression, T data); |
|
||||||
S VisitAssignmentExpression(AssignmentExpression assignmentExpression, T data); |
|
||||||
S VisitBaseReferenceExpression(BaseReferenceExpression baseReferenceExpression, T data); |
|
||||||
S VisitBinaryOperatorExpression(BinaryOperatorExpression binaryOperatorExpression, T data); |
|
||||||
S VisitCastExpression(CastExpression castExpression, T data); |
|
||||||
S VisitCheckedExpression(CheckedExpression checkedExpression, T data); |
|
||||||
S VisitConditionalExpression(ConditionalExpression conditionalExpression, T data); |
|
||||||
S VisitDeclarationExpression(DeclarationExpression declarationExpression, T data); |
|
||||||
S VisitRecursivePatternExpression(RecursivePatternExpression recursivePatternExpression, T data); |
|
||||||
S VisitDefaultValueExpression(DefaultValueExpression defaultValueExpression, T data); |
|
||||||
S VisitDirectionExpression(DirectionExpression directionExpression, T data); |
|
||||||
S VisitIdentifierExpression(IdentifierExpression identifierExpression, T data); |
|
||||||
S VisitIndexerExpression(IndexerExpression indexerExpression, T data); |
|
||||||
S VisitInterpolatedStringExpression(InterpolatedStringExpression interpolatedStringExpression, T data); |
|
||||||
S VisitInvocationExpression(InvocationExpression invocationExpression, T data); |
|
||||||
S VisitIsExpression(IsExpression isExpression, T data); |
|
||||||
S VisitLambdaExpression(LambdaExpression lambdaExpression, T data); |
|
||||||
S VisitMemberReferenceExpression(MemberReferenceExpression memberReferenceExpression, T data); |
|
||||||
S VisitNamedArgumentExpression(NamedArgumentExpression namedArgumentExpression, T data); |
|
||||||
S VisitNamedExpression(NamedExpression namedExpression, T data); |
|
||||||
S VisitNullReferenceExpression(NullReferenceExpression nullReferenceExpression, T data); |
|
||||||
S VisitObjectCreateExpression(ObjectCreateExpression objectCreateExpression, T data); |
|
||||||
S VisitOutVarDeclarationExpression(OutVarDeclarationExpression outVarDeclarationExpression, T data); |
|
||||||
S VisitParenthesizedExpression(ParenthesizedExpression parenthesizedExpression, T data); |
|
||||||
S VisitPointerReferenceExpression(PointerReferenceExpression pointerReferenceExpression, T data); |
|
||||||
S VisitPrimitiveExpression(PrimitiveExpression primitiveExpression, T data); |
|
||||||
S VisitSizeOfExpression(SizeOfExpression sizeOfExpression, T data); |
|
||||||
S VisitStackAllocExpression(StackAllocExpression stackAllocExpression, T data); |
|
||||||
S VisitThisReferenceExpression(ThisReferenceExpression thisReferenceExpression, T data); |
|
||||||
S VisitThrowExpression(ThrowExpression throwExpression, T data); |
|
||||||
S VisitTupleExpression(TupleExpression tupleExpression, T data); |
|
||||||
S VisitTypeOfExpression(TypeOfExpression typeOfExpression, T data); |
|
||||||
S VisitTypeReferenceExpression(TypeReferenceExpression typeReferenceExpression, T data); |
|
||||||
S VisitUnaryOperatorExpression(UnaryOperatorExpression unaryOperatorExpression, T data); |
|
||||||
S VisitUncheckedExpression(UncheckedExpression uncheckedExpression, T data); |
|
||||||
S VisitUndocumentedExpression(UndocumentedExpression undocumentedExpression, T data); |
|
||||||
S VisitWithInitializerExpression(WithInitializerExpression withInitializerExpression, T data); |
|
||||||
|
|
||||||
S VisitQueryExpression(QueryExpression queryExpression, T data); |
|
||||||
S VisitQueryContinuationClause(QueryContinuationClause queryContinuationClause, T data); |
|
||||||
S VisitQueryFromClause(QueryFromClause queryFromClause, T data); |
|
||||||
S VisitQueryLetClause(QueryLetClause queryLetClause, T data); |
|
||||||
S VisitQueryWhereClause(QueryWhereClause queryWhereClause, T data); |
|
||||||
S VisitQueryJoinClause(QueryJoinClause queryJoinClause, T data); |
|
||||||
S VisitQueryOrderClause(QueryOrderClause queryOrderClause, T data); |
|
||||||
S VisitQueryOrdering(QueryOrdering queryOrdering, T data); |
|
||||||
S VisitQuerySelectClause(QuerySelectClause querySelectClause, T data); |
|
||||||
S VisitQueryGroupClause(QueryGroupClause queryGroupClause, T data); |
|
||||||
|
|
||||||
S VisitAttribute(Attribute attribute, T data); |
|
||||||
S VisitAttributeSection(AttributeSection attributeSection, T data); |
|
||||||
S VisitDelegateDeclaration(DelegateDeclaration delegateDeclaration, T data); |
|
||||||
S VisitNamespaceDeclaration(NamespaceDeclaration namespaceDeclaration, T data); |
|
||||||
S VisitTypeDeclaration(TypeDeclaration typeDeclaration, T data); |
|
||||||
S VisitUsingAliasDeclaration(UsingAliasDeclaration usingAliasDeclaration, T data); |
|
||||||
S VisitUsingDeclaration(UsingDeclaration usingDeclaration, T data); |
|
||||||
S VisitExternAliasDeclaration(ExternAliasDeclaration externAliasDeclaration, T data); |
|
||||||
|
|
||||||
S VisitBlockStatement(BlockStatement blockStatement, T data); |
|
||||||
S VisitBreakStatement(BreakStatement breakStatement, T data); |
|
||||||
S VisitCheckedStatement(CheckedStatement checkedStatement, T data); |
|
||||||
S VisitContinueStatement(ContinueStatement continueStatement, T data); |
|
||||||
S VisitDoWhileStatement(DoWhileStatement doWhileStatement, T data); |
|
||||||
S VisitEmptyStatement(EmptyStatement emptyStatement, T data); |
|
||||||
S VisitExpressionStatement(ExpressionStatement expressionStatement, T data); |
|
||||||
S VisitFixedStatement(FixedStatement fixedStatement, T data); |
|
||||||
S VisitForeachStatement(ForeachStatement foreachStatement, T data); |
|
||||||
S VisitForStatement(ForStatement forStatement, T data); |
|
||||||
S VisitGotoCaseStatement(GotoCaseStatement gotoCaseStatement, T data); |
|
||||||
S VisitGotoDefaultStatement(GotoDefaultStatement gotoDefaultStatement, T data); |
|
||||||
S VisitGotoStatement(GotoStatement gotoStatement, T data); |
|
||||||
S VisitIfElseStatement(IfElseStatement ifElseStatement, T data); |
|
||||||
S VisitLabelStatement(LabelStatement labelStatement, T data); |
|
||||||
S VisitLockStatement(LockStatement lockStatement, T data); |
|
||||||
S VisitReturnStatement(ReturnStatement returnStatement, T data); |
|
||||||
S VisitSwitchStatement(SwitchStatement switchStatement, T data); |
|
||||||
S VisitSwitchSection(SwitchSection switchSection, T data); |
|
||||||
S VisitCaseLabel(CaseLabel caseLabel, T data); |
|
||||||
S VisitSwitchExpression(SwitchExpression switchExpression, T data); |
|
||||||
S VisitSwitchExpressionSection(SwitchExpressionSection switchExpressionSection, T data); |
|
||||||
S VisitThrowStatement(ThrowStatement throwStatement, T data); |
|
||||||
S VisitTryCatchStatement(TryCatchStatement tryCatchStatement, T data); |
|
||||||
S VisitCatchClause(CatchClause catchClause, T data); |
|
||||||
S VisitUncheckedStatement(UncheckedStatement uncheckedStatement, T data); |
|
||||||
S VisitUnsafeStatement(UnsafeStatement unsafeStatement, T data); |
|
||||||
S VisitUsingStatement(UsingStatement usingStatement, T data); |
|
||||||
S VisitVariableDeclarationStatement(VariableDeclarationStatement variableDeclarationStatement, T data); |
|
||||||
S VisitLocalFunctionDeclarationStatement(LocalFunctionDeclarationStatement localFunctionDeclarationStatement, T data); |
|
||||||
S VisitWhileStatement(WhileStatement whileStatement, T data); |
|
||||||
S VisitYieldBreakStatement(YieldBreakStatement yieldBreakStatement, T data); |
|
||||||
S VisitYieldReturnStatement(YieldReturnStatement yieldReturnStatement, T data); |
|
||||||
|
|
||||||
S VisitAccessor(Accessor accessor, T data); |
|
||||||
S VisitConstructorDeclaration(ConstructorDeclaration constructorDeclaration, T data); |
|
||||||
S VisitConstructorInitializer(ConstructorInitializer constructorInitializer, T data); |
|
||||||
S VisitDestructorDeclaration(DestructorDeclaration destructorDeclaration, T data); |
|
||||||
S VisitEnumMemberDeclaration(EnumMemberDeclaration enumMemberDeclaration, T data); |
|
||||||
S VisitEventDeclaration(EventDeclaration eventDeclaration, T data); |
|
||||||
S VisitCustomEventDeclaration(CustomEventDeclaration customEventDeclaration, T data); |
|
||||||
S VisitFieldDeclaration(FieldDeclaration fieldDeclaration, T data); |
|
||||||
S VisitIndexerDeclaration(IndexerDeclaration indexerDeclaration, T data); |
|
||||||
S VisitMethodDeclaration(MethodDeclaration methodDeclaration, T data); |
|
||||||
S VisitOperatorDeclaration(OperatorDeclaration operatorDeclaration, T data); |
|
||||||
S VisitParameterDeclaration(ParameterDeclaration parameterDeclaration, T data); |
|
||||||
S VisitPropertyDeclaration(PropertyDeclaration propertyDeclaration, T data); |
|
||||||
S VisitVariableInitializer(VariableInitializer variableInitializer, T data); |
|
||||||
S VisitFixedFieldDeclaration(FixedFieldDeclaration fixedFieldDeclaration, T data); |
|
||||||
S VisitFixedVariableInitializer(FixedVariableInitializer fixedVariableInitializer, T data); |
|
||||||
|
|
||||||
S VisitSyntaxTree(SyntaxTree syntaxTree, T data); |
|
||||||
S VisitSimpleType(SimpleType simpleType, T data); |
|
||||||
S VisitMemberType(MemberType memberType, T data); |
|
||||||
S VisitTupleType(TupleAstType tupleType, T data); |
|
||||||
S VisitTupleTypeElement(TupleTypeElement tupleTypeElement, T data); |
|
||||||
S VisitFunctionPointerType(FunctionPointerAstType functionPointerType, T data); |
|
||||||
S VisitInvocationType(InvocationAstType invocationType, T data); |
|
||||||
S VisitComposedType(ComposedType composedType, T data); |
|
||||||
S VisitArraySpecifier(ArraySpecifier arraySpecifier, T data); |
|
||||||
S VisitPrimitiveType(PrimitiveType primitiveType, T data); |
|
||||||
|
|
||||||
S VisitComment(Comment comment, T data); |
|
||||||
S VisitPreProcessorDirective(PreProcessorDirective preProcessorDirective, T data); |
|
||||||
S VisitDocumentationReference(DocumentationReference documentationReference, T data); |
|
||||||
|
|
||||||
S VisitTypeParameterDeclaration(TypeParameterDeclaration typeParameterDeclaration, T data); |
|
||||||
S VisitConstraint(Constraint constraint, T data); |
|
||||||
S VisitCSharpTokenNode(CSharpTokenNode cSharpTokenNode, T data); |
|
||||||
S VisitIdentifier(Identifier identifier, T data); |
|
||||||
|
|
||||||
S VisitInterpolation(Interpolation interpolation, T data); |
|
||||||
S VisitInterpolatedStringText(InterpolatedStringText interpolatedStringText, T data); |
|
||||||
|
|
||||||
S VisitSingleVariableDesignation(SingleVariableDesignation singleVariableDesignation, T data); |
|
||||||
S VisitParenthesizedVariableDesignation(ParenthesizedVariableDesignation parenthesizedVariableDesignation, T data); |
|
||||||
|
|
||||||
S VisitNullNode(AstNode nullNode, T data); |
|
||||||
S VisitErrorNode(AstNode errorNode, T data); |
|
||||||
S VisitPatternPlaceholder(AstNode placeholder, PatternMatching.Pattern pattern, T data); |
|
||||||
} |
|
||||||
} |
|
Loading…
Reference in new issue