1 | // Copyright (c) 2010-2013 AlphaSierraPapa for the SharpDevelop Team |
---|
2 | // |
---|
3 | // Permission is hereby granted, free of charge, to any person obtaining a copy of this |
---|
4 | // software and associated documentation files (the "Software"), to deal in the Software |
---|
5 | // without restriction, including without limitation the rights to use, copy, modify, merge, |
---|
6 | // publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons |
---|
7 | // to whom the Software is furnished to do so, subject to the following conditions: |
---|
8 | // |
---|
9 | // The above copyright notice and this permission notice shall be included in all copies or |
---|
10 | // substantial portions of the Software. |
---|
11 | // |
---|
12 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, |
---|
13 | // INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR |
---|
14 | // PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE |
---|
15 | // FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR |
---|
16 | // OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER |
---|
17 | // DEALINGS IN THE SOFTWARE. |
---|
18 | |
---|
19 | using System; |
---|
20 | |
---|
21 | namespace ICSharpCode.NRefactory.CSharp |
---|
22 | { |
---|
23 | /// <summary> |
---|
24 | /// AST visitor. |
---|
25 | /// </summary> |
---|
26 | public interface IAstVisitor |
---|
27 | { |
---|
28 | void VisitAnonymousMethodExpression(AnonymousMethodExpression anonymousMethodExpression); |
---|
29 | void VisitUndocumentedExpression(UndocumentedExpression undocumentedExpression); |
---|
30 | void VisitArrayCreateExpression(ArrayCreateExpression arrayCreateExpression); |
---|
31 | void VisitArrayInitializerExpression(ArrayInitializerExpression arrayInitializerExpression); |
---|
32 | void VisitAsExpression(AsExpression asExpression); |
---|
33 | void VisitAssignmentExpression(AssignmentExpression assignmentExpression); |
---|
34 | void VisitBaseReferenceExpression(BaseReferenceExpression baseReferenceExpression); |
---|
35 | void VisitBinaryOperatorExpression(BinaryOperatorExpression binaryOperatorExpression); |
---|
36 | void VisitCastExpression(CastExpression castExpression); |
---|
37 | void VisitCheckedExpression(CheckedExpression checkedExpression); |
---|
38 | void VisitConditionalExpression(ConditionalExpression conditionalExpression); |
---|
39 | void VisitDefaultValueExpression(DefaultValueExpression defaultValueExpression); |
---|
40 | void VisitDirectionExpression(DirectionExpression directionExpression); |
---|
41 | void VisitIdentifierExpression(IdentifierExpression identifierExpression); |
---|
42 | void VisitIndexerExpression(IndexerExpression indexerExpression); |
---|
43 | void VisitInvocationExpression(InvocationExpression invocationExpression); |
---|
44 | void VisitIsExpression(IsExpression isExpression); |
---|
45 | void VisitLambdaExpression(LambdaExpression lambdaExpression); |
---|
46 | void VisitMemberReferenceExpression(MemberReferenceExpression memberReferenceExpression); |
---|
47 | void VisitNamedArgumentExpression(NamedArgumentExpression namedArgumentExpression); |
---|
48 | void VisitNamedExpression(NamedExpression namedExpression); |
---|
49 | void VisitNullReferenceExpression(NullReferenceExpression nullReferenceExpression); |
---|
50 | void VisitObjectCreateExpression(ObjectCreateExpression objectCreateExpression); |
---|
51 | void VisitAnonymousTypeCreateExpression(AnonymousTypeCreateExpression anonymousTypeCreateExpression); |
---|
52 | void VisitParenthesizedExpression(ParenthesizedExpression parenthesizedExpression); |
---|
53 | void VisitPointerReferenceExpression(PointerReferenceExpression pointerReferenceExpression); |
---|
54 | void VisitPrimitiveExpression(PrimitiveExpression primitiveExpression); |
---|
55 | void VisitSizeOfExpression(SizeOfExpression sizeOfExpression); |
---|
56 | void VisitStackAllocExpression(StackAllocExpression stackAllocExpression); |
---|
57 | void VisitThisReferenceExpression(ThisReferenceExpression thisReferenceExpression); |
---|
58 | void VisitTypeOfExpression(TypeOfExpression typeOfExpression); |
---|
59 | void VisitTypeReferenceExpression(TypeReferenceExpression typeReferenceExpression); |
---|
60 | void VisitUnaryOperatorExpression(UnaryOperatorExpression unaryOperatorExpression); |
---|
61 | void VisitUncheckedExpression(UncheckedExpression uncheckedExpression); |
---|
62 | |
---|
63 | void VisitQueryExpression(QueryExpression queryExpression); |
---|
64 | void VisitQueryContinuationClause(QueryContinuationClause queryContinuationClause); |
---|
65 | void VisitQueryFromClause(QueryFromClause queryFromClause); |
---|
66 | void VisitQueryLetClause(QueryLetClause queryLetClause); |
---|
67 | void VisitQueryWhereClause(QueryWhereClause queryWhereClause); |
---|
68 | void VisitQueryJoinClause(QueryJoinClause queryJoinClause); |
---|
69 | void VisitQueryOrderClause(QueryOrderClause queryOrderClause); |
---|
70 | void VisitQueryOrdering(QueryOrdering queryOrdering); |
---|
71 | void VisitQuerySelectClause(QuerySelectClause querySelectClause); |
---|
72 | void VisitQueryGroupClause(QueryGroupClause queryGroupClause); |
---|
73 | |
---|
74 | void VisitAttribute(Attribute attribute); |
---|
75 | void VisitAttributeSection(AttributeSection attributeSection); |
---|
76 | void VisitDelegateDeclaration(DelegateDeclaration delegateDeclaration); |
---|
77 | void VisitNamespaceDeclaration(NamespaceDeclaration namespaceDeclaration); |
---|
78 | void VisitTypeDeclaration(TypeDeclaration typeDeclaration); |
---|
79 | void VisitUsingAliasDeclaration(UsingAliasDeclaration usingAliasDeclaration); |
---|
80 | void VisitUsingDeclaration(UsingDeclaration usingDeclaration); |
---|
81 | void VisitExternAliasDeclaration(ExternAliasDeclaration externAliasDeclaration); |
---|
82 | |
---|
83 | void VisitBlockStatement(BlockStatement blockStatement); |
---|
84 | void VisitBreakStatement(BreakStatement breakStatement); |
---|
85 | void VisitCheckedStatement(CheckedStatement checkedStatement); |
---|
86 | void VisitContinueStatement(ContinueStatement continueStatement); |
---|
87 | void VisitDoWhileStatement(DoWhileStatement doWhileStatement); |
---|
88 | void VisitEmptyStatement(EmptyStatement emptyStatement); |
---|
89 | void VisitExpressionStatement(ExpressionStatement expressionStatement); |
---|
90 | void VisitFixedStatement(FixedStatement fixedStatement); |
---|
91 | void VisitForeachStatement(ForeachStatement foreachStatement); |
---|
92 | void VisitForStatement(ForStatement forStatement); |
---|
93 | void VisitGotoCaseStatement(GotoCaseStatement gotoCaseStatement); |
---|
94 | void VisitGotoDefaultStatement(GotoDefaultStatement gotoDefaultStatement); |
---|
95 | void VisitGotoStatement(GotoStatement gotoStatement); |
---|
96 | void VisitIfElseStatement(IfElseStatement ifElseStatement); |
---|
97 | void VisitLabelStatement(LabelStatement labelStatement); |
---|
98 | void VisitLockStatement(LockStatement lockStatement); |
---|
99 | void VisitReturnStatement(ReturnStatement returnStatement); |
---|
100 | void VisitSwitchStatement(SwitchStatement switchStatement); |
---|
101 | void VisitSwitchSection(SwitchSection switchSection); |
---|
102 | void VisitCaseLabel(CaseLabel caseLabel); |
---|
103 | void VisitThrowStatement(ThrowStatement throwStatement); |
---|
104 | void VisitTryCatchStatement(TryCatchStatement tryCatchStatement); |
---|
105 | void VisitCatchClause(CatchClause catchClause); |
---|
106 | void VisitUncheckedStatement(UncheckedStatement uncheckedStatement); |
---|
107 | void VisitUnsafeStatement(UnsafeStatement unsafeStatement); |
---|
108 | void VisitUsingStatement(UsingStatement usingStatement); |
---|
109 | void VisitVariableDeclarationStatement(VariableDeclarationStatement variableDeclarationStatement); |
---|
110 | void VisitWhileStatement(WhileStatement whileStatement); |
---|
111 | void VisitYieldBreakStatement(YieldBreakStatement yieldBreakStatement); |
---|
112 | void VisitYieldReturnStatement(YieldReturnStatement yieldReturnStatement); |
---|
113 | |
---|
114 | void VisitAccessor(Accessor accessor); |
---|
115 | void VisitConstructorDeclaration(ConstructorDeclaration constructorDeclaration); |
---|
116 | void VisitConstructorInitializer(ConstructorInitializer constructorInitializer); |
---|
117 | void VisitDestructorDeclaration(DestructorDeclaration destructorDeclaration); |
---|
118 | void VisitEnumMemberDeclaration(EnumMemberDeclaration enumMemberDeclaration); |
---|
119 | void VisitEventDeclaration(EventDeclaration eventDeclaration); |
---|
120 | void VisitCustomEventDeclaration(CustomEventDeclaration customEventDeclaration); |
---|
121 | void VisitFieldDeclaration(FieldDeclaration fieldDeclaration); |
---|
122 | void VisitIndexerDeclaration(IndexerDeclaration indexerDeclaration); |
---|
123 | void VisitMethodDeclaration(MethodDeclaration methodDeclaration); |
---|
124 | void VisitOperatorDeclaration(OperatorDeclaration operatorDeclaration); |
---|
125 | void VisitParameterDeclaration(ParameterDeclaration parameterDeclaration); |
---|
126 | void VisitPropertyDeclaration(PropertyDeclaration propertyDeclaration); |
---|
127 | void VisitVariableInitializer(VariableInitializer variableInitializer); |
---|
128 | void VisitFixedFieldDeclaration(FixedFieldDeclaration fixedFieldDeclaration); |
---|
129 | void VisitFixedVariableInitializer(FixedVariableInitializer fixedVariableInitializer); |
---|
130 | |
---|
131 | void VisitSyntaxTree(SyntaxTree syntaxTree); |
---|
132 | void VisitSimpleType(SimpleType simpleType); |
---|
133 | void VisitMemberType(MemberType memberType); |
---|
134 | void VisitComposedType(ComposedType composedType); |
---|
135 | void VisitArraySpecifier(ArraySpecifier arraySpecifier); |
---|
136 | void VisitPrimitiveType(PrimitiveType primitiveType); |
---|
137 | |
---|
138 | void VisitComment(Comment comment); |
---|
139 | void VisitNewLine(NewLineNode newLineNode); |
---|
140 | void VisitWhitespace(WhitespaceNode whitespaceNode); |
---|
141 | void VisitText(TextNode textNode); |
---|
142 | void VisitPreProcessorDirective(PreProcessorDirective preProcessorDirective); |
---|
143 | void VisitDocumentationReference(DocumentationReference documentationReference); |
---|
144 | |
---|
145 | void VisitTypeParameterDeclaration(TypeParameterDeclaration typeParameterDeclaration); |
---|
146 | void VisitConstraint(Constraint constraint); |
---|
147 | void VisitCSharpTokenNode(CSharpTokenNode cSharpTokenNode); |
---|
148 | void VisitIdentifier(Identifier identifier); |
---|
149 | |
---|
150 | void VisitNullNode(AstNode nullNode); |
---|
151 | void VisitErrorNode(AstNode errorNode); |
---|
152 | void VisitPatternPlaceholder(AstNode placeholder, PatternMatching.Pattern pattern); |
---|
153 | } |
---|
154 | |
---|
155 | /// <summary> |
---|
156 | /// AST visitor. |
---|
157 | /// </summary> |
---|
158 | public interface IAstVisitor<out S> |
---|
159 | { |
---|
160 | S VisitAnonymousMethodExpression(AnonymousMethodExpression anonymousMethodExpression); |
---|
161 | S VisitUndocumentedExpression(UndocumentedExpression undocumentedExpression); |
---|
162 | S VisitArrayCreateExpression(ArrayCreateExpression arrayCreateExpression); |
---|
163 | S VisitArrayInitializerExpression(ArrayInitializerExpression arrayInitializerExpression); |
---|
164 | S VisitAsExpression(AsExpression asExpression); |
---|
165 | S VisitAssignmentExpression(AssignmentExpression assignmentExpression); |
---|
166 | S VisitBaseReferenceExpression(BaseReferenceExpression baseReferenceExpression); |
---|
167 | S VisitBinaryOperatorExpression(BinaryOperatorExpression binaryOperatorExpression); |
---|
168 | S VisitCastExpression(CastExpression castExpression); |
---|
169 | S VisitCheckedExpression(CheckedExpression checkedExpression); |
---|
170 | S VisitConditionalExpression(ConditionalExpression conditionalExpression); |
---|
171 | S VisitDefaultValueExpression(DefaultValueExpression defaultValueExpression); |
---|
172 | S VisitDirectionExpression(DirectionExpression directionExpression); |
---|
173 | S VisitIdentifierExpression(IdentifierExpression identifierExpression); |
---|
174 | S VisitIndexerExpression(IndexerExpression indexerExpression); |
---|
175 | S VisitInvocationExpression(InvocationExpression invocationExpression); |
---|
176 | S VisitIsExpression(IsExpression isExpression); |
---|
177 | S VisitLambdaExpression(LambdaExpression lambdaExpression); |
---|
178 | S VisitMemberReferenceExpression(MemberReferenceExpression memberReferenceExpression); |
---|
179 | S VisitNamedArgumentExpression(NamedArgumentExpression namedArgumentExpression); |
---|
180 | S VisitNamedExpression(NamedExpression namedExpression); |
---|
181 | S VisitNullReferenceExpression(NullReferenceExpression nullReferenceExpression); |
---|
182 | S VisitObjectCreateExpression(ObjectCreateExpression objectCreateExpression); |
---|
183 | S VisitAnonymousTypeCreateExpression(AnonymousTypeCreateExpression anonymousTypeCreateExpression); |
---|
184 | S VisitParenthesizedExpression(ParenthesizedExpression parenthesizedExpression); |
---|
185 | S VisitPointerReferenceExpression(PointerReferenceExpression pointerReferenceExpression); |
---|
186 | S VisitPrimitiveExpression(PrimitiveExpression primitiveExpression); |
---|
187 | S VisitSizeOfExpression(SizeOfExpression sizeOfExpression); |
---|
188 | S VisitStackAllocExpression(StackAllocExpression stackAllocExpression); |
---|
189 | S VisitThisReferenceExpression(ThisReferenceExpression thisReferenceExpression); |
---|
190 | S VisitTypeOfExpression(TypeOfExpression typeOfExpression); |
---|
191 | S VisitTypeReferenceExpression(TypeReferenceExpression typeReferenceExpression); |
---|
192 | S VisitUnaryOperatorExpression(UnaryOperatorExpression unaryOperatorExpression); |
---|
193 | S VisitUncheckedExpression(UncheckedExpression uncheckedExpression); |
---|
194 | |
---|
195 | S VisitQueryExpression(QueryExpression queryExpression); |
---|
196 | S VisitQueryContinuationClause(QueryContinuationClause queryContinuationClause); |
---|
197 | S VisitQueryFromClause(QueryFromClause queryFromClause); |
---|
198 | S VisitQueryLetClause(QueryLetClause queryLetClause); |
---|
199 | S VisitQueryWhereClause(QueryWhereClause queryWhereClause); |
---|
200 | S VisitQueryJoinClause(QueryJoinClause queryJoinClause); |
---|
201 | S VisitQueryOrderClause(QueryOrderClause queryOrderClause); |
---|
202 | S VisitQueryOrdering(QueryOrdering queryOrdering); |
---|
203 | S VisitQuerySelectClause(QuerySelectClause querySelectClause); |
---|
204 | S VisitQueryGroupClause(QueryGroupClause queryGroupClause); |
---|
205 | |
---|
206 | S VisitAttribute(Attribute attribute); |
---|
207 | S VisitAttributeSection(AttributeSection attributeSection); |
---|
208 | S VisitDelegateDeclaration(DelegateDeclaration delegateDeclaration); |
---|
209 | S VisitNamespaceDeclaration(NamespaceDeclaration namespaceDeclaration); |
---|
210 | S VisitTypeDeclaration(TypeDeclaration typeDeclaration); |
---|
211 | S VisitUsingAliasDeclaration(UsingAliasDeclaration usingAliasDeclaration); |
---|
212 | S VisitUsingDeclaration(UsingDeclaration usingDeclaration); |
---|
213 | S VisitExternAliasDeclaration(ExternAliasDeclaration externAliasDeclaration); |
---|
214 | |
---|
215 | S VisitBlockStatement(BlockStatement blockStatement); |
---|
216 | S VisitBreakStatement(BreakStatement breakStatement); |
---|
217 | S VisitCheckedStatement(CheckedStatement checkedStatement); |
---|
218 | S VisitContinueStatement(ContinueStatement continueStatement); |
---|
219 | S VisitDoWhileStatement(DoWhileStatement doWhileStatement); |
---|
220 | S VisitEmptyStatement(EmptyStatement emptyStatement); |
---|
221 | S VisitExpressionStatement(ExpressionStatement expressionStatement); |
---|
222 | S VisitFixedStatement(FixedStatement fixedStatement); |
---|
223 | S VisitForeachStatement(ForeachStatement foreachStatement); |
---|
224 | S VisitForStatement(ForStatement forStatement); |
---|
225 | S VisitGotoCaseStatement(GotoCaseStatement gotoCaseStatement); |
---|
226 | S VisitGotoDefaultStatement(GotoDefaultStatement gotoDefaultStatement); |
---|
227 | S VisitGotoStatement(GotoStatement gotoStatement); |
---|
228 | S VisitIfElseStatement(IfElseStatement ifElseStatement); |
---|
229 | S VisitLabelStatement(LabelStatement labelStatement); |
---|
230 | S VisitLockStatement(LockStatement lockStatement); |
---|
231 | S VisitReturnStatement(ReturnStatement returnStatement); |
---|
232 | S VisitSwitchStatement(SwitchStatement switchStatement); |
---|
233 | S VisitSwitchSection(SwitchSection switchSection); |
---|
234 | S VisitCaseLabel(CaseLabel caseLabel); |
---|
235 | S VisitThrowStatement(ThrowStatement throwStatement); |
---|
236 | S VisitTryCatchStatement(TryCatchStatement tryCatchStatement); |
---|
237 | S VisitCatchClause(CatchClause catchClause); |
---|
238 | S VisitUncheckedStatement(UncheckedStatement uncheckedStatement); |
---|
239 | S VisitUnsafeStatement(UnsafeStatement unsafeStatement); |
---|
240 | S VisitUsingStatement(UsingStatement usingStatement); |
---|
241 | S VisitVariableDeclarationStatement(VariableDeclarationStatement variableDeclarationStatement); |
---|
242 | S VisitWhileStatement(WhileStatement whileStatement); |
---|
243 | S VisitYieldBreakStatement(YieldBreakStatement yieldBreakStatement); |
---|
244 | S VisitYieldReturnStatement(YieldReturnStatement yieldReturnStatement); |
---|
245 | |
---|
246 | S VisitAccessor(Accessor accessor); |
---|
247 | S VisitConstructorDeclaration(ConstructorDeclaration constructorDeclaration); |
---|
248 | S VisitConstructorInitializer(ConstructorInitializer constructorInitializer); |
---|
249 | S VisitDestructorDeclaration(DestructorDeclaration destructorDeclaration); |
---|
250 | S VisitEnumMemberDeclaration(EnumMemberDeclaration enumMemberDeclaration); |
---|
251 | S VisitEventDeclaration(EventDeclaration eventDeclaration); |
---|
252 | S VisitCustomEventDeclaration(CustomEventDeclaration customEventDeclaration); |
---|
253 | S VisitFieldDeclaration(FieldDeclaration fieldDeclaration); |
---|
254 | S VisitIndexerDeclaration(IndexerDeclaration indexerDeclaration); |
---|
255 | S VisitMethodDeclaration(MethodDeclaration methodDeclaration); |
---|
256 | S VisitOperatorDeclaration(OperatorDeclaration operatorDeclaration); |
---|
257 | S VisitParameterDeclaration(ParameterDeclaration parameterDeclaration); |
---|
258 | S VisitPropertyDeclaration(PropertyDeclaration propertyDeclaration); |
---|
259 | S VisitVariableInitializer(VariableInitializer variableInitializer); |
---|
260 | S VisitFixedFieldDeclaration(FixedFieldDeclaration fixedFieldDeclaration); |
---|
261 | S VisitFixedVariableInitializer(FixedVariableInitializer fixedVariableInitializer); |
---|
262 | |
---|
263 | S VisitSyntaxTree(SyntaxTree syntaxTree); |
---|
264 | S VisitSimpleType(SimpleType simpleType); |
---|
265 | S VisitMemberType(MemberType memberType); |
---|
266 | S VisitComposedType(ComposedType composedType); |
---|
267 | S VisitArraySpecifier(ArraySpecifier arraySpecifier); |
---|
268 | S VisitPrimitiveType(PrimitiveType primitiveType); |
---|
269 | |
---|
270 | S VisitComment(Comment comment); |
---|
271 | S VisitWhitespace(WhitespaceNode whitespaceNode); |
---|
272 | S VisitText(TextNode textNode); |
---|
273 | S VisitNewLine(NewLineNode newLineNode); |
---|
274 | S VisitPreProcessorDirective(PreProcessorDirective preProcessorDirective); |
---|
275 | S VisitDocumentationReference(DocumentationReference documentationReference); |
---|
276 | |
---|
277 | S VisitTypeParameterDeclaration(TypeParameterDeclaration typeParameterDeclaration); |
---|
278 | S VisitConstraint(Constraint constraint); |
---|
279 | S VisitCSharpTokenNode(CSharpTokenNode cSharpTokenNode); |
---|
280 | S VisitIdentifier(Identifier identifier); |
---|
281 | |
---|
282 | S VisitNullNode(AstNode nullNode); |
---|
283 | S VisitErrorNode(AstNode errorNode); |
---|
284 | S VisitPatternPlaceholder(AstNode placeholder, PatternMatching.Pattern pattern); |
---|
285 | } |
---|
286 | |
---|
287 | /// <summary> |
---|
288 | /// AST visitor. |
---|
289 | /// </summary> |
---|
290 | public interface IAstVisitor<in T, out S> |
---|
291 | { |
---|
292 | S VisitAnonymousMethodExpression(AnonymousMethodExpression anonymousMethodExpression, T data); |
---|
293 | S VisitUndocumentedExpression(UndocumentedExpression undocumentedExpression, T data); |
---|
294 | S VisitArrayCreateExpression(ArrayCreateExpression arrayCreateExpression, T data); |
---|
295 | S VisitArrayInitializerExpression(ArrayInitializerExpression arrayInitializerExpression, T data); |
---|
296 | S VisitAsExpression(AsExpression asExpression, T data); |
---|
297 | S VisitAssignmentExpression(AssignmentExpression assignmentExpression, T data); |
---|
298 | S VisitBaseReferenceExpression(BaseReferenceExpression baseReferenceExpression, T data); |
---|
299 | S VisitBinaryOperatorExpression(BinaryOperatorExpression binaryOperatorExpression, T data); |
---|
300 | S VisitCastExpression(CastExpression castExpression, T data); |
---|
301 | S VisitCheckedExpression(CheckedExpression checkedExpression, T data); |
---|
302 | S VisitConditionalExpression(ConditionalExpression conditionalExpression, T data); |
---|
303 | S VisitDefaultValueExpression(DefaultValueExpression defaultValueExpression, T data); |
---|
304 | S VisitDirectionExpression(DirectionExpression directionExpression, T data); |
---|
305 | S VisitIdentifierExpression(IdentifierExpression identifierExpression, T data); |
---|
306 | S VisitIndexerExpression(IndexerExpression indexerExpression, T data); |
---|
307 | S VisitInvocationExpression(InvocationExpression invocationExpression, T data); |
---|
308 | S VisitIsExpression(IsExpression isExpression, T data); |
---|
309 | S VisitLambdaExpression(LambdaExpression lambdaExpression, T data); |
---|
310 | S VisitMemberReferenceExpression(MemberReferenceExpression memberReferenceExpression, T data); |
---|
311 | S VisitNamedArgumentExpression(NamedArgumentExpression namedArgumentExpression, T data); |
---|
312 | S VisitNamedExpression(NamedExpression namedExpression, T data); |
---|
313 | S VisitNullReferenceExpression(NullReferenceExpression nullReferenceExpression, T data); |
---|
314 | S VisitObjectCreateExpression(ObjectCreateExpression objectCreateExpression, T data); |
---|
315 | S VisitAnonymousTypeCreateExpression(AnonymousTypeCreateExpression anonymousTypeCreateExpression, T data); |
---|
316 | S VisitParenthesizedExpression(ParenthesizedExpression parenthesizedExpression, T data); |
---|
317 | S VisitPointerReferenceExpression(PointerReferenceExpression pointerReferenceExpression, T data); |
---|
318 | S VisitPrimitiveExpression(PrimitiveExpression primitiveExpression, T data); |
---|
319 | S VisitSizeOfExpression(SizeOfExpression sizeOfExpression, T data); |
---|
320 | S VisitStackAllocExpression(StackAllocExpression stackAllocExpression, T data); |
---|
321 | S VisitThisReferenceExpression(ThisReferenceExpression thisReferenceExpression, T data); |
---|
322 | S VisitTypeOfExpression(TypeOfExpression typeOfExpression, T data); |
---|
323 | S VisitTypeReferenceExpression(TypeReferenceExpression typeReferenceExpression, T data); |
---|
324 | S VisitUnaryOperatorExpression(UnaryOperatorExpression unaryOperatorExpression, T data); |
---|
325 | S VisitUncheckedExpression(UncheckedExpression uncheckedExpression, T data); |
---|
326 | |
---|
327 | S VisitQueryExpression(QueryExpression queryExpression, T data); |
---|
328 | S VisitQueryContinuationClause(QueryContinuationClause queryContinuationClause, T data); |
---|
329 | S VisitQueryFromClause(QueryFromClause queryFromClause, T data); |
---|
330 | S VisitQueryLetClause(QueryLetClause queryLetClause, T data); |
---|
331 | S VisitQueryWhereClause(QueryWhereClause queryWhereClause, T data); |
---|
332 | S VisitQueryJoinClause(QueryJoinClause queryJoinClause, T data); |
---|
333 | S VisitQueryOrderClause(QueryOrderClause queryOrderClause, T data); |
---|
334 | S VisitQueryOrdering(QueryOrdering queryOrdering, T data); |
---|
335 | S VisitQuerySelectClause(QuerySelectClause querySelectClause, T data); |
---|
336 | S VisitQueryGroupClause(QueryGroupClause queryGroupClause, T data); |
---|
337 | |
---|
338 | S VisitAttribute(Attribute attribute, T data); |
---|
339 | S VisitAttributeSection(AttributeSection attributeSection, T data); |
---|
340 | S VisitDelegateDeclaration(DelegateDeclaration delegateDeclaration, T data); |
---|
341 | S VisitNamespaceDeclaration(NamespaceDeclaration namespaceDeclaration, T data); |
---|
342 | S VisitTypeDeclaration(TypeDeclaration typeDeclaration, T data); |
---|
343 | S VisitUsingAliasDeclaration(UsingAliasDeclaration usingAliasDeclaration, T data); |
---|
344 | S VisitUsingDeclaration(UsingDeclaration usingDeclaration, T data); |
---|
345 | S VisitExternAliasDeclaration(ExternAliasDeclaration externAliasDeclaration, T data); |
---|
346 | |
---|
347 | S VisitBlockStatement(BlockStatement blockStatement, T data); |
---|
348 | S VisitBreakStatement(BreakStatement breakStatement, T data); |
---|
349 | S VisitCheckedStatement(CheckedStatement checkedStatement, T data); |
---|
350 | S VisitContinueStatement(ContinueStatement continueStatement, T data); |
---|
351 | S VisitDoWhileStatement(DoWhileStatement doWhileStatement, T data); |
---|
352 | S VisitEmptyStatement(EmptyStatement emptyStatement, T data); |
---|
353 | S VisitExpressionStatement(ExpressionStatement expressionStatement, T data); |
---|
354 | S VisitFixedStatement(FixedStatement fixedStatement, T data); |
---|
355 | S VisitForeachStatement(ForeachStatement foreachStatement, T data); |
---|
356 | S VisitForStatement(ForStatement forStatement, T data); |
---|
357 | S VisitGotoCaseStatement(GotoCaseStatement gotoCaseStatement, T data); |
---|
358 | S VisitGotoDefaultStatement(GotoDefaultStatement gotoDefaultStatement, T data); |
---|
359 | S VisitGotoStatement(GotoStatement gotoStatement, T data); |
---|
360 | S VisitIfElseStatement(IfElseStatement ifElseStatement, T data); |
---|
361 | S VisitLabelStatement(LabelStatement labelStatement, T data); |
---|
362 | S VisitLockStatement(LockStatement lockStatement, T data); |
---|
363 | S VisitReturnStatement(ReturnStatement returnStatement, T data); |
---|
364 | S VisitSwitchStatement(SwitchStatement switchStatement, T data); |
---|
365 | S VisitSwitchSection(SwitchSection switchSection, T data); |
---|
366 | S VisitCaseLabel(CaseLabel caseLabel, T data); |
---|
367 | S VisitThrowStatement(ThrowStatement throwStatement, T data); |
---|
368 | S VisitTryCatchStatement(TryCatchStatement tryCatchStatement, T data); |
---|
369 | S VisitCatchClause(CatchClause catchClause, T data); |
---|
370 | S VisitUncheckedStatement(UncheckedStatement uncheckedStatement, T data); |
---|
371 | S VisitUnsafeStatement(UnsafeStatement unsafeStatement, T data); |
---|
372 | S VisitUsingStatement(UsingStatement usingStatement, T data); |
---|
373 | S VisitVariableDeclarationStatement(VariableDeclarationStatement variableDeclarationStatement, T data); |
---|
374 | S VisitWhileStatement(WhileStatement whileStatement, T data); |
---|
375 | S VisitYieldBreakStatement(YieldBreakStatement yieldBreakStatement, T data); |
---|
376 | S VisitYieldReturnStatement(YieldReturnStatement yieldReturnStatement, T data); |
---|
377 | |
---|
378 | S VisitAccessor(Accessor accessor, T data); |
---|
379 | S VisitConstructorDeclaration(ConstructorDeclaration constructorDeclaration, T data); |
---|
380 | S VisitConstructorInitializer(ConstructorInitializer constructorInitializer, T data); |
---|
381 | S VisitDestructorDeclaration(DestructorDeclaration destructorDeclaration, T data); |
---|
382 | S VisitEnumMemberDeclaration(EnumMemberDeclaration enumMemberDeclaration, T data); |
---|
383 | S VisitEventDeclaration(EventDeclaration eventDeclaration, T data); |
---|
384 | S VisitCustomEventDeclaration(CustomEventDeclaration customEventDeclaration, T data); |
---|
385 | S VisitFieldDeclaration(FieldDeclaration fieldDeclaration, T data); |
---|
386 | S VisitIndexerDeclaration(IndexerDeclaration indexerDeclaration, T data); |
---|
387 | S VisitMethodDeclaration(MethodDeclaration methodDeclaration, T data); |
---|
388 | S VisitOperatorDeclaration(OperatorDeclaration operatorDeclaration, T data); |
---|
389 | S VisitParameterDeclaration(ParameterDeclaration parameterDeclaration, T data); |
---|
390 | S VisitPropertyDeclaration(PropertyDeclaration propertyDeclaration, T data); |
---|
391 | S VisitVariableInitializer(VariableInitializer variableInitializer, T data); |
---|
392 | S VisitFixedFieldDeclaration(FixedFieldDeclaration fixedFieldDeclaration, T data); |
---|
393 | S VisitFixedVariableInitializer(FixedVariableInitializer fixedVariableInitializer, T data); |
---|
394 | |
---|
395 | S VisitSyntaxTree(SyntaxTree syntaxTree, T data); |
---|
396 | S VisitSimpleType(SimpleType simpleType, T data); |
---|
397 | S VisitMemberType(MemberType memberType, T data); |
---|
398 | S VisitComposedType(ComposedType composedType, T data); |
---|
399 | S VisitArraySpecifier(ArraySpecifier arraySpecifier, T data); |
---|
400 | S VisitPrimitiveType(PrimitiveType primitiveType, T data); |
---|
401 | |
---|
402 | S VisitComment(Comment comment, T data); |
---|
403 | S VisitNewLine(NewLineNode newLineNode, T data); |
---|
404 | S VisitWhitespace(WhitespaceNode whitespaceNode, T data); |
---|
405 | S VisitText(TextNode textNode, T data); |
---|
406 | S VisitPreProcessorDirective(PreProcessorDirective preProcessorDirective, T data); |
---|
407 | S VisitDocumentationReference(DocumentationReference documentationReference, T data); |
---|
408 | |
---|
409 | S VisitTypeParameterDeclaration(TypeParameterDeclaration typeParameterDeclaration, T data); |
---|
410 | S VisitConstraint(Constraint constraint, T data); |
---|
411 | S VisitCSharpTokenNode(CSharpTokenNode cSharpTokenNode, T data); |
---|
412 | S VisitIdentifier(Identifier identifier, T data); |
---|
413 | |
---|
414 | S VisitNullNode(AstNode nullNode, T data); |
---|
415 | S VisitErrorNode(AstNode errorNode, T data); |
---|
416 | S VisitPatternPlaceholder(AstNode placeholder, PatternMatching.Pattern pattern, T data); |
---|
417 | } |
---|
418 | } |
---|