You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
678 lines
24 KiB
678 lines
24 KiB
// Copyright (c) 2014 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. |
|
|
|
using System; |
|
using System.Collections.Generic; |
|
using System.Diagnostics; |
|
using System.Text; |
|
using ICSharpCode.NRefactory.Ast; |
|
using ICSharpCode.NRefactory.Visitors; |
|
|
|
namespace PyWalker |
|
{ |
|
public class NRefactoryAstVisitor : AbstractAstVisitor |
|
{ |
|
IOutputWriter writer; |
|
|
|
public NRefactoryAstVisitor(IOutputWriter writer) |
|
{ |
|
this.writer = writer; |
|
} |
|
|
|
public override object VisitAddHandlerStatement(AddHandlerStatement addHandlerStatement, object data) |
|
{ |
|
return base.VisitAddHandlerStatement(addHandlerStatement, data); |
|
} |
|
|
|
public override object VisitAddressOfExpression(AddressOfExpression addressOfExpression, object data) |
|
{ |
|
return base.VisitAddressOfExpression(addressOfExpression, data); |
|
} |
|
|
|
public override object VisitAnonymousMethodExpression(AnonymousMethodExpression anonymousMethodExpression, object data) |
|
{ |
|
return base.VisitAnonymousMethodExpression(anonymousMethodExpression, data); |
|
} |
|
|
|
public override object VisitArrayCreateExpression(ArrayCreateExpression arrayCreateExpression, object data) |
|
{ |
|
return base.VisitArrayCreateExpression(arrayCreateExpression, data); |
|
} |
|
|
|
public override object VisitAssignmentExpression(AssignmentExpression assignmentExpression, object data) |
|
{ |
|
WriteLine("VisitAssignmentExpression"); |
|
return base.VisitAssignmentExpression(assignmentExpression, data); |
|
} |
|
|
|
public override object VisitAttribute(ICSharpCode.NRefactory.Ast.Attribute attribute, object data) |
|
{ |
|
return base.VisitAttribute(attribute, data); |
|
} |
|
|
|
public override object VisitAttributeSection(AttributeSection attributeSection, object data) |
|
{ |
|
return base.VisitAttributeSection(attributeSection, data); |
|
} |
|
|
|
public override object VisitBaseReferenceExpression(BaseReferenceExpression baseReferenceExpression, object data) |
|
{ |
|
return base.VisitBaseReferenceExpression(baseReferenceExpression, data); |
|
} |
|
|
|
public override object VisitBinaryOperatorExpression(BinaryOperatorExpression binaryOperatorExpression, object data) |
|
{ |
|
return base.VisitBinaryOperatorExpression(binaryOperatorExpression, data); |
|
} |
|
|
|
public override object VisitBlockStatement(BlockStatement blockStatement, object data) |
|
{ |
|
return base.VisitBlockStatement(blockStatement, data); |
|
} |
|
|
|
public override object VisitBreakStatement(BreakStatement breakStatement, object data) |
|
{ |
|
return base.VisitBreakStatement(breakStatement, data); |
|
} |
|
|
|
public override object VisitCaseLabel(CaseLabel caseLabel, object data) |
|
{ |
|
return base.VisitCaseLabel(caseLabel, data); |
|
} |
|
|
|
public override object VisitCastExpression(CastExpression castExpression, object data) |
|
{ |
|
return base.VisitCastExpression(castExpression, data); |
|
} |
|
|
|
public override object VisitCatchClause(CatchClause catchClause, object data) |
|
{ |
|
return base.VisitCatchClause(catchClause, data); |
|
} |
|
|
|
public override object VisitCheckedExpression(CheckedExpression checkedExpression, object data) |
|
{ |
|
return base.VisitCheckedExpression(checkedExpression, data); |
|
} |
|
|
|
public override object VisitCheckedStatement(CheckedStatement checkedStatement, object data) |
|
{ |
|
return base.VisitCheckedStatement(checkedStatement, data); |
|
} |
|
|
|
public override object VisitClassReferenceExpression(ClassReferenceExpression classReferenceExpression, object data) |
|
{ |
|
return base.VisitClassReferenceExpression(classReferenceExpression, data); |
|
} |
|
|
|
public override object VisitCollectionInitializerExpression(CollectionInitializerExpression collectionInitializerExpression, object data) |
|
{ |
|
WriteLine("VisitCollectionInitializerExpression"); |
|
return base.VisitCollectionInitializerExpression(collectionInitializerExpression, data); |
|
} |
|
|
|
public override object VisitCompilationUnit(CompilationUnit compilationUnit, object data) |
|
{ |
|
WriteLine("VisitCodeCompileUnit"); |
|
return base.VisitCompilationUnit(compilationUnit, data); |
|
} |
|
|
|
public override object VisitConditionalExpression(ConditionalExpression conditionalExpression, object data) |
|
{ |
|
return base.VisitConditionalExpression(conditionalExpression, data); |
|
} |
|
|
|
public override object VisitConstructorDeclaration(ConstructorDeclaration constructorDeclaration, object data) |
|
{ |
|
WriteLine("VisitConstructorDeclaration"); |
|
return base.VisitConstructorDeclaration(constructorDeclaration, data); |
|
} |
|
|
|
public override object VisitConstructorInitializer(ConstructorInitializer constructorInitializer, object data) |
|
{ |
|
WriteLine("VisitConstructorInitializer"); |
|
return base.VisitConstructorInitializer(constructorInitializer, data); |
|
} |
|
|
|
public override object VisitContinueStatement(ContinueStatement continueStatement, object data) |
|
{ |
|
return base.VisitContinueStatement(continueStatement, data); |
|
} |
|
|
|
public override object VisitDeclareDeclaration(DeclareDeclaration declareDeclaration, object data) |
|
{ |
|
return base.VisitDeclareDeclaration(declareDeclaration, data); |
|
} |
|
|
|
public override object VisitDefaultValueExpression(DefaultValueExpression defaultValueExpression, object data) |
|
{ |
|
return base.VisitDefaultValueExpression(defaultValueExpression, data); |
|
} |
|
|
|
public override object VisitDelegateDeclaration(DelegateDeclaration delegateDeclaration, object data) |
|
{ |
|
return base.VisitDelegateDeclaration(delegateDeclaration, data); |
|
} |
|
|
|
public override object VisitDestructorDeclaration(DestructorDeclaration destructorDeclaration, object data) |
|
{ |
|
return base.VisitDestructorDeclaration(destructorDeclaration, data); |
|
} |
|
|
|
public override object VisitDirectionExpression(DirectionExpression directionExpression, object data) |
|
{ |
|
return base.VisitDirectionExpression(directionExpression, data); |
|
} |
|
|
|
public override object VisitDoLoopStatement(DoLoopStatement doLoopStatement, object data) |
|
{ |
|
return base.VisitDoLoopStatement(doLoopStatement, data); |
|
} |
|
|
|
public override object VisitElseIfSection(ElseIfSection elseIfSection, object data) |
|
{ |
|
return base.VisitElseIfSection(elseIfSection, data); |
|
} |
|
|
|
public override object VisitEmptyStatement(EmptyStatement emptyStatement, object data) |
|
{ |
|
WriteLine("VisitEmptyStatement"); |
|
return base.VisitEmptyStatement(emptyStatement, data); |
|
} |
|
|
|
public override object VisitEndStatement(EndStatement endStatement, object data) |
|
{ |
|
return base.VisitEndStatement(endStatement, data); |
|
} |
|
|
|
public override object VisitEraseStatement(EraseStatement eraseStatement, object data) |
|
{ |
|
return base.VisitEraseStatement(eraseStatement, data); |
|
} |
|
|
|
public override object VisitErrorStatement(ErrorStatement errorStatement, object data) |
|
{ |
|
return base.VisitErrorStatement(errorStatement, data); |
|
} |
|
|
|
public override object VisitEventAddRegion(EventAddRegion eventAddRegion, object data) |
|
{ |
|
return base.VisitEventAddRegion(eventAddRegion, data); |
|
} |
|
|
|
public override object VisitEventDeclaration(EventDeclaration eventDeclaration, object data) |
|
{ |
|
return base.VisitEventDeclaration(eventDeclaration, data); |
|
} |
|
|
|
public override object VisitEventRaiseRegion(EventRaiseRegion eventRaiseRegion, object data) |
|
{ |
|
return base.VisitEventRaiseRegion(eventRaiseRegion, data); |
|
} |
|
|
|
public override object VisitEventRemoveRegion(EventRemoveRegion eventRemoveRegion, object data) |
|
{ |
|
return base.VisitEventRemoveRegion(eventRemoveRegion, data); |
|
} |
|
|
|
public override object VisitExitStatement(ExitStatement exitStatement, object data) |
|
{ |
|
return base.VisitExitStatement(exitStatement, data); |
|
} |
|
|
|
public override object VisitExpressionRangeVariable(ExpressionRangeVariable expressionRangeVariable, object data) |
|
{ |
|
return base.VisitExpressionRangeVariable(expressionRangeVariable, data); |
|
} |
|
|
|
public override object VisitExpressionStatement(ExpressionStatement expressionStatement, object data) |
|
{ |
|
WriteLine("VisitExpressionStatement"); |
|
return base.VisitExpressionStatement(expressionStatement, data); |
|
} |
|
|
|
public override object VisitFieldDeclaration(FieldDeclaration fieldDeclaration, object data) |
|
{ |
|
WriteLine("VisitFieldDeclaration: " + fieldDeclaration.Fields[0].Name); |
|
return base.VisitFieldDeclaration(fieldDeclaration, data); |
|
} |
|
|
|
public override object VisitFixedStatement(FixedStatement fixedStatement, object data) |
|
{ |
|
return base.VisitFixedStatement(fixedStatement, data); |
|
} |
|
|
|
public override object VisitForeachStatement(ForeachStatement foreachStatement, object data) |
|
{ |
|
return base.VisitForeachStatement(foreachStatement, data); |
|
} |
|
|
|
public override object VisitForNextStatement(ForNextStatement forNextStatement, object data) |
|
{ |
|
return base.VisitForNextStatement(forNextStatement, data); |
|
} |
|
|
|
public override object VisitForStatement(ForStatement forStatement, object data) |
|
{ |
|
return base.VisitForStatement(forStatement, data); |
|
} |
|
|
|
public override object VisitGotoCaseStatement(GotoCaseStatement gotoCaseStatement, object data) |
|
{ |
|
return base.VisitGotoCaseStatement(gotoCaseStatement, data); |
|
} |
|
|
|
public override object VisitGotoStatement(GotoStatement gotoStatement, object data) |
|
{ |
|
return base.VisitGotoStatement(gotoStatement, data); |
|
} |
|
|
|
public override object VisitIdentifierExpression(IdentifierExpression identifierExpression, object data) |
|
{ |
|
WriteLine("VisitIdentifierExpression"); |
|
return base.VisitIdentifierExpression(identifierExpression, data); |
|
} |
|
|
|
public override object VisitIfElseStatement(IfElseStatement ifElseStatement, object data) |
|
{ |
|
return base.VisitIfElseStatement(ifElseStatement, data); |
|
} |
|
|
|
public override object VisitIndexerExpression(IndexerExpression indexerExpression, object data) |
|
{ |
|
return base.VisitIndexerExpression(indexerExpression, data); |
|
} |
|
|
|
public override object VisitInnerClassTypeReference(InnerClassTypeReference innerClassTypeReference, object data) |
|
{ |
|
return base.VisitInnerClassTypeReference(innerClassTypeReference, data); |
|
} |
|
|
|
public override object VisitInterfaceImplementation(InterfaceImplementation interfaceImplementation, object data) |
|
{ |
|
return base.VisitInterfaceImplementation(interfaceImplementation, data); |
|
} |
|
|
|
public override object VisitInvocationExpression(InvocationExpression invocationExpression, object data) |
|
{ |
|
return base.VisitInvocationExpression(invocationExpression, data); |
|
} |
|
|
|
public override object VisitLabelStatement(LabelStatement labelStatement, object data) |
|
{ |
|
return base.VisitLabelStatement(labelStatement, data); |
|
} |
|
|
|
public override object VisitLambdaExpression(LambdaExpression lambdaExpression, object data) |
|
{ |
|
return base.VisitLambdaExpression(lambdaExpression, data); |
|
} |
|
|
|
public override object VisitLocalVariableDeclaration(LocalVariableDeclaration localVariableDeclaration, object data) |
|
{ |
|
WriteLine("VisitLocalVariableDeclaration"); |
|
return base.VisitLocalVariableDeclaration(localVariableDeclaration, data); |
|
} |
|
|
|
public override object VisitLockStatement(LockStatement lockStatement, object data) |
|
{ |
|
return base.VisitLockStatement(lockStatement, data); |
|
} |
|
|
|
public override object VisitMemberReferenceExpression(MemberReferenceExpression memberReferenceExpression, object data) |
|
{ |
|
WriteLine("VisitMemberReferenceExpression"); |
|
return base.VisitMemberReferenceExpression(memberReferenceExpression, data); |
|
} |
|
|
|
public override object VisitMethodDeclaration(MethodDeclaration methodDeclaration, object data) |
|
{ |
|
WriteLine("VisitMethodDeclaration"); |
|
using (IDisposable indentLevel = Indentation.IncrementLevel()) { |
|
return base.VisitMethodDeclaration(methodDeclaration, data); |
|
} |
|
} |
|
|
|
public override object VisitNamedArgumentExpression(NamedArgumentExpression namedArgumentExpression, object data) |
|
{ |
|
return base.VisitNamedArgumentExpression(namedArgumentExpression, data); |
|
} |
|
|
|
public override object VisitNamespaceDeclaration(NamespaceDeclaration namespaceDeclaration, object data) |
|
{ |
|
WriteLine("VisitNamespaceDeclaration"); |
|
return base.VisitNamespaceDeclaration(namespaceDeclaration, data); |
|
} |
|
|
|
public override object VisitObjectCreateExpression(ObjectCreateExpression objectCreateExpression, object data) |
|
{ |
|
WriteLine("VisitObjectCreateExpression"); |
|
return base.VisitObjectCreateExpression(objectCreateExpression, data); |
|
} |
|
|
|
public override object VisitOnErrorStatement(OnErrorStatement onErrorStatement, object data) |
|
{ |
|
return base.VisitOnErrorStatement(onErrorStatement, data); |
|
} |
|
|
|
public override object VisitOperatorDeclaration(OperatorDeclaration operatorDeclaration, object data) |
|
{ |
|
return base.VisitOperatorDeclaration(operatorDeclaration, data); |
|
} |
|
|
|
public override object VisitOptionDeclaration(OptionDeclaration optionDeclaration, object data) |
|
{ |
|
return base.VisitOptionDeclaration(optionDeclaration, data); |
|
} |
|
|
|
public override object VisitParameterDeclarationExpression(ParameterDeclarationExpression parameterDeclarationExpression, object data) |
|
{ |
|
return base.VisitParameterDeclarationExpression(parameterDeclarationExpression, data); |
|
} |
|
|
|
public override object VisitParenthesizedExpression(ParenthesizedExpression parenthesizedExpression, object data) |
|
{ |
|
return base.VisitParenthesizedExpression(parenthesizedExpression, data); |
|
} |
|
|
|
public override object VisitPointerReferenceExpression(PointerReferenceExpression pointerReferenceExpression, object data) |
|
{ |
|
return base.VisitPointerReferenceExpression(pointerReferenceExpression, data); |
|
} |
|
|
|
public override object VisitPrimitiveExpression(PrimitiveExpression primitiveExpression, object data) |
|
{ |
|
return base.VisitPrimitiveExpression(primitiveExpression, data); |
|
} |
|
|
|
public override object VisitPropertyDeclaration(PropertyDeclaration propertyDeclaration, object data) |
|
{ |
|
return base.VisitPropertyDeclaration(propertyDeclaration, data); |
|
} |
|
|
|
public override object VisitPropertyGetRegion(PropertyGetRegion propertyGetRegion, object data) |
|
{ |
|
return base.VisitPropertyGetRegion(propertyGetRegion, data); |
|
} |
|
|
|
public override object VisitPropertySetRegion(PropertySetRegion propertySetRegion, object data) |
|
{ |
|
return base.VisitPropertySetRegion(propertySetRegion, data); |
|
} |
|
|
|
public override object VisitQueryExpression(QueryExpression queryExpression, object data) |
|
{ |
|
return base.VisitQueryExpression(queryExpression, data); |
|
} |
|
|
|
public override object VisitQueryExpressionAggregateClause(QueryExpressionAggregateClause queryExpressionAggregateClause, object data) |
|
{ |
|
return base.VisitQueryExpressionAggregateClause(queryExpressionAggregateClause, data); |
|
} |
|
|
|
public override object VisitQueryExpressionDistinctClause(QueryExpressionDistinctClause queryExpressionDistinctClause, object data) |
|
{ |
|
return base.VisitQueryExpressionDistinctClause(queryExpressionDistinctClause, data); |
|
} |
|
|
|
public override object VisitQueryExpressionFromClause(QueryExpressionFromClause queryExpressionFromClause, object data) |
|
{ |
|
return base.VisitQueryExpressionFromClause(queryExpressionFromClause, data); |
|
} |
|
|
|
public override object VisitQueryExpressionGroupClause(QueryExpressionGroupClause queryExpressionGroupClause, object data) |
|
{ |
|
return base.VisitQueryExpressionGroupClause(queryExpressionGroupClause, data); |
|
} |
|
|
|
public override object VisitQueryExpressionGroupJoinVBClause(QueryExpressionGroupJoinVBClause queryExpressionGroupJoinVBClause, object data) |
|
{ |
|
return base.VisitQueryExpressionGroupJoinVBClause(queryExpressionGroupJoinVBClause, data); |
|
} |
|
|
|
public override object VisitQueryExpressionGroupVBClause(QueryExpressionGroupVBClause queryExpressionGroupVBClause, object data) |
|
{ |
|
return base.VisitQueryExpressionGroupVBClause(queryExpressionGroupVBClause, data); |
|
} |
|
|
|
public override object VisitQueryExpressionJoinClause(QueryExpressionJoinClause queryExpressionJoinClause, object data) |
|
{ |
|
return base.VisitQueryExpressionJoinClause(queryExpressionJoinClause, data); |
|
} |
|
|
|
public override object VisitQueryExpressionJoinConditionVB(QueryExpressionJoinConditionVB queryExpressionJoinConditionVB, object data) |
|
{ |
|
return base.VisitQueryExpressionJoinConditionVB(queryExpressionJoinConditionVB, data); |
|
} |
|
|
|
public override object VisitQueryExpressionJoinVBClause(QueryExpressionJoinVBClause queryExpressionJoinVBClause, object data) |
|
{ |
|
return base.VisitQueryExpressionJoinVBClause(queryExpressionJoinVBClause, data); |
|
} |
|
|
|
public override object VisitQueryExpressionLetClause(QueryExpressionLetClause queryExpressionLetClause, object data) |
|
{ |
|
return base.VisitQueryExpressionLetClause(queryExpressionLetClause, data); |
|
} |
|
|
|
public override object VisitQueryExpressionLetVBClause(QueryExpressionLetVBClause queryExpressionLetVBClause, object data) |
|
{ |
|
return base.VisitQueryExpressionLetVBClause(queryExpressionLetVBClause, data); |
|
} |
|
|
|
public override object VisitQueryExpressionOrderClause(QueryExpressionOrderClause queryExpressionOrderClause, object data) |
|
{ |
|
return base.VisitQueryExpressionOrderClause(queryExpressionOrderClause, data); |
|
} |
|
|
|
public override object VisitQueryExpressionOrdering(QueryExpressionOrdering queryExpressionOrdering, object data) |
|
{ |
|
return base.VisitQueryExpressionOrdering(queryExpressionOrdering, data); |
|
} |
|
|
|
public override object VisitQueryExpressionPartitionVBClause(QueryExpressionPartitionVBClause queryExpressionPartitionVBClause, object data) |
|
{ |
|
return base.VisitQueryExpressionPartitionVBClause(queryExpressionPartitionVBClause, data); |
|
} |
|
|
|
public override object VisitQueryExpressionSelectClause(QueryExpressionSelectClause queryExpressionSelectClause, object data) |
|
{ |
|
return base.VisitQueryExpressionSelectClause(queryExpressionSelectClause, data); |
|
} |
|
|
|
public override object VisitQueryExpressionSelectVBClause(QueryExpressionSelectVBClause queryExpressionSelectVBClause, object data) |
|
{ |
|
return base.VisitQueryExpressionSelectVBClause(queryExpressionSelectVBClause, data); |
|
} |
|
|
|
public override object VisitQueryExpressionWhereClause(QueryExpressionWhereClause queryExpressionWhereClause, object data) |
|
{ |
|
return base.VisitQueryExpressionWhereClause(queryExpressionWhereClause, data); |
|
} |
|
|
|
public override object VisitRaiseEventStatement(RaiseEventStatement raiseEventStatement, object data) |
|
{ |
|
return base.VisitRaiseEventStatement(raiseEventStatement, data); |
|
} |
|
|
|
public override object VisitReDimStatement(ReDimStatement reDimStatement, object data) |
|
{ |
|
return base.VisitReDimStatement(reDimStatement, data); |
|
} |
|
|
|
public override object VisitRemoveHandlerStatement(RemoveHandlerStatement removeHandlerStatement, object data) |
|
{ |
|
return base.VisitRemoveHandlerStatement(removeHandlerStatement, data); |
|
} |
|
|
|
public override object VisitResumeStatement(ResumeStatement resumeStatement, object data) |
|
{ |
|
return base.VisitResumeStatement(resumeStatement, data); |
|
} |
|
|
|
public override object VisitReturnStatement(ReturnStatement returnStatement, object data) |
|
{ |
|
return base.VisitReturnStatement(returnStatement, data); |
|
} |
|
|
|
public override object VisitSizeOfExpression(SizeOfExpression sizeOfExpression, object data) |
|
{ |
|
return base.VisitSizeOfExpression(sizeOfExpression, data); |
|
} |
|
|
|
public override object VisitStackAllocExpression(StackAllocExpression stackAllocExpression, object data) |
|
{ |
|
return base.VisitStackAllocExpression(stackAllocExpression, data); |
|
} |
|
|
|
public override object VisitStopStatement(StopStatement stopStatement, object data) |
|
{ |
|
return base.VisitStopStatement(stopStatement, data); |
|
} |
|
|
|
public override object VisitSwitchSection(SwitchSection switchSection, object data) |
|
{ |
|
return base.VisitSwitchSection(switchSection, data); |
|
} |
|
|
|
public override object VisitSwitchStatement(SwitchStatement switchStatement, object data) |
|
{ |
|
return base.VisitSwitchStatement(switchStatement, data); |
|
} |
|
|
|
public override object VisitTemplateDefinition(TemplateDefinition templateDefinition, object data) |
|
{ |
|
return base.VisitTemplateDefinition(templateDefinition, data); |
|
} |
|
|
|
public override object VisitThisReferenceExpression(ThisReferenceExpression thisReferenceExpression, object data) |
|
{ |
|
WriteLine("VisitThisReferenceExpression"); |
|
return base.VisitThisReferenceExpression(thisReferenceExpression, data); |
|
} |
|
|
|
public override object VisitThrowStatement(ThrowStatement throwStatement, object data) |
|
{ |
|
return base.VisitThrowStatement(throwStatement, data); |
|
} |
|
|
|
public override object VisitTryCatchStatement(TryCatchStatement tryCatchStatement, object data) |
|
{ |
|
return base.VisitTryCatchStatement(tryCatchStatement, data); |
|
} |
|
|
|
public override object VisitTypeDeclaration(TypeDeclaration typeDeclaration, object data) |
|
{ |
|
WriteLine("VisitTypeDeclaration"); |
|
using (IDisposable indentLevel = Indentation.IncrementLevel()) { |
|
return base.VisitTypeDeclaration(typeDeclaration, data); |
|
} |
|
} |
|
|
|
public override object VisitTypeOfExpression(TypeOfExpression typeOfExpression, object data) |
|
{ |
|
return base.VisitTypeOfExpression(typeOfExpression, data); |
|
} |
|
|
|
public override object VisitTypeOfIsExpression(TypeOfIsExpression typeOfIsExpression, object data) |
|
{ |
|
return base.VisitTypeOfIsExpression(typeOfIsExpression, data); |
|
} |
|
|
|
public override object VisitTypeReference(TypeReference typeReference, object data) |
|
{ |
|
return base.VisitTypeReference(typeReference, data); |
|
} |
|
|
|
public override object VisitTypeReferenceExpression(TypeReferenceExpression typeReferenceExpression, object data) |
|
{ |
|
return base.VisitTypeReferenceExpression(typeReferenceExpression, data); |
|
} |
|
|
|
public override object VisitUnaryOperatorExpression(UnaryOperatorExpression unaryOperatorExpression, object data) |
|
{ |
|
return base.VisitUnaryOperatorExpression(unaryOperatorExpression, data); |
|
} |
|
|
|
public override object VisitUncheckedExpression(UncheckedExpression uncheckedExpression, object data) |
|
{ |
|
return base.VisitUncheckedExpression(uncheckedExpression, data); |
|
} |
|
|
|
public override object VisitUncheckedStatement(UncheckedStatement uncheckedStatement, object data) |
|
{ |
|
return base.VisitUncheckedStatement(uncheckedStatement, data); |
|
} |
|
|
|
public override object VisitUnsafeStatement(UnsafeStatement unsafeStatement, object data) |
|
{ |
|
return base.VisitUnsafeStatement(unsafeStatement, data); |
|
} |
|
|
|
public override object VisitUsing(Using @using, object data) |
|
{ |
|
WriteLine("VisitUsing"); |
|
return base.VisitUsing(@using, data); |
|
} |
|
|
|
public override object VisitUsingDeclaration(UsingDeclaration usingDeclaration, object data) |
|
{ |
|
WriteLine("VisitUsingDeclaration"); |
|
return base.VisitUsingDeclaration(usingDeclaration, data); |
|
} |
|
|
|
public override object VisitUsingStatement(UsingStatement usingStatement, object data) |
|
{ |
|
WriteLine("VisitUsingStatement"); |
|
return base.VisitUsingStatement(usingStatement, data); |
|
} |
|
|
|
public override object VisitVariableDeclaration(VariableDeclaration variableDeclaration, object data) |
|
{ |
|
WriteLine("VisitVariableDeclaration"); |
|
return base.VisitVariableDeclaration(variableDeclaration, data); |
|
} |
|
|
|
public override object VisitWithStatement(WithStatement withStatement, object data) |
|
{ |
|
return base.VisitWithStatement(withStatement, data); |
|
} |
|
|
|
public override object VisitYieldStatement(YieldStatement yieldStatement, object data) |
|
{ |
|
return base.VisitYieldStatement(yieldStatement, data); |
|
} |
|
|
|
/// <summary> |
|
/// Writes a line and indents it to the current level. |
|
/// </summary> |
|
void WriteLine(string s) |
|
{ |
|
writer.WriteLine(GetIndent() + s); |
|
} |
|
|
|
string GetIndent() |
|
{ |
|
StringBuilder indent = new StringBuilder(); |
|
for (int i = 0; i < Indentation.CurrentLevel; ++i) { |
|
indent.Append('\t'); |
|
} |
|
return indent.ToString(); |
|
} |
|
} |
|
}
|
|
|