Class PatternStatementTransform
- Namespace
- ICSharpCode.Decompiler.CSharp.Transforms
- Assembly
- ICSharpCode.Decompiler.dll
Finds the expanded form of using statements using pattern matching and replaces it with a UsingStatement.
public sealed class PatternStatementTransform : ContextTrackingVisitor<AstNode>, IAstVisitor<AstNode>, IAstTransform
- Inheritance
-
PatternStatementTransform
- Implements
- Inherited Members
Constructors
PatternStatementTransform()
public PatternStatementTransform()
Methods
Run(AstNode, TransformContext)
public void Run(AstNode rootNode, TransformContext context)
Parameters
rootNode
AstNodecontext
TransformContext
TransformFor(ExpressionStatement)
public ForStatement TransformFor(ExpressionStatement node)
Parameters
node
ExpressionStatement
Returns
VisitBinaryOperatorExpression(BinaryOperatorExpression)
Use associativity of logic operators to avoid parentheses.
public override AstNode VisitBinaryOperatorExpression(BinaryOperatorExpression expr)
Parameters
Returns
VisitChildren(AstNode)
protected override AstNode VisitChildren(AstNode node)
Parameters
node
AstNode
Returns
VisitCustomEventDeclaration(CustomEventDeclaration)
public override AstNode VisitCustomEventDeclaration(CustomEventDeclaration eventDeclaration)
Parameters
eventDeclaration
CustomEventDeclaration
Returns
VisitDestructorDeclaration(DestructorDeclaration)
public override AstNode VisitDestructorDeclaration(DestructorDeclaration destructorDeclaration)
Parameters
destructorDeclaration
DestructorDeclaration
Returns
VisitExpressionStatement(ExpressionStatement)
public override AstNode VisitExpressionStatement(ExpressionStatement expressionStatement)
Parameters
expressionStatement
ExpressionStatement
Returns
VisitFixedStatement(FixedStatement)
public override AstNode VisitFixedStatement(FixedStatement fixedStatement)
Parameters
fixedStatement
FixedStatement
Returns
VisitForStatement(ForStatement)
public override AstNode VisitForStatement(ForStatement forStatement)
Parameters
forStatement
ForStatement
Returns
VisitIdentifier(Identifier)
public override AstNode VisitIdentifier(Identifier identifier)
Parameters
identifier
Identifier
Returns
VisitIfElseStatement(IfElseStatement)
public override AstNode VisitIfElseStatement(IfElseStatement ifElseStatement)
Parameters
ifElseStatement
IfElseStatement
Returns
VisitMethodDeclaration(MethodDeclaration)
public override AstNode VisitMethodDeclaration(MethodDeclaration methodDeclaration)
Parameters
methodDeclaration
MethodDeclaration
Returns
VisitPropertyDeclaration(PropertyDeclaration)
public override AstNode VisitPropertyDeclaration(PropertyDeclaration propertyDeclaration)
Parameters
propertyDeclaration
PropertyDeclaration
Returns
VisitTryCatchStatement(TryCatchStatement)
public override AstNode VisitTryCatchStatement(TryCatchStatement tryCatchStatement)
Parameters
tryCatchStatement
TryCatchStatement
Returns
VisitUsingStatement(UsingStatement)
public override AstNode VisitUsingStatement(UsingStatement usingStatement)
Parameters
usingStatement
UsingStatement