Class IntroduceExtensionMethods
- Namespace
- ICSharpCode.Decompiler.CSharp.Transforms
- Assembly
- ICSharpCode.Decompiler.dll
Converts extension method calls into infix syntax.
public class IntroduceExtensionMethods : DepthFirstAstVisitor, IAstVisitor, IAstTransform
- Inheritance
-
IntroduceExtensionMethods
- Implements
- Inherited Members
Constructors
IntroduceExtensionMethods()
public IntroduceExtensionMethods()
Methods
CanTransformToExtensionMethodCall(CSharpResolver, IMethod, IReadOnlyList<IType>, ResolveResult, ResolveResult[], string[])
public static bool CanTransformToExtensionMethodCall(CSharpResolver resolver, IMethod method, IReadOnlyList<IType> typeArguments, ResolveResult target, ResolveResult[] arguments, string[] argumentNames)
Parameters
resolver
CSharpResolvermethod
IMethodtypeArguments
IReadOnlyList<IType>target
ResolveResultarguments
ResolveResult[]argumentNames
string[]
Returns
CanTransformToExtensionMethodCall(CSharpTypeResolveContext, InvocationExpression)
public static bool CanTransformToExtensionMethodCall(CSharpTypeResolveContext resolveContext, InvocationExpression invocationExpression)
Parameters
resolveContext
CSharpTypeResolveContextinvocationExpression
InvocationExpression
Returns
CanTransformToExtensionMethodCall(IMethod, CSharpTypeResolveContext, bool, bool)
public static bool CanTransformToExtensionMethodCall(IMethod method, CSharpTypeResolveContext resolveContext, bool ignoreTypeArguments = false, bool ignoreArgumentNames = true)
Parameters
method
IMethodresolveContext
CSharpTypeResolveContextignoreTypeArguments
boolignoreArgumentNames
bool
Returns
Run(AstNode, TransformContext)
public void Run(AstNode rootNode, TransformContext context)
Parameters
rootNode
AstNodecontext
TransformContext
VisitInvocationExpression(InvocationExpression)
public override void VisitInvocationExpression(InvocationExpression invocationExpression)
Parameters
invocationExpression
InvocationExpression
VisitNamespaceDeclaration(NamespaceDeclaration)
public override void VisitNamespaceDeclaration(NamespaceDeclaration namespaceDeclaration)
Parameters
namespaceDeclaration
NamespaceDeclaration
VisitTypeDeclaration(TypeDeclaration)
public override void VisitTypeDeclaration(TypeDeclaration typeDeclaration)
Parameters
typeDeclaration
TypeDeclaration