C# Class Shaolinq.AsyncRewriter.MethodInvocationInspector

Inheritance: CSharpSyntaxRewriter
Show file Open project: tumtumtum/Shaolinq

Protected Properties

Property Type Description
cancellationTokenSymbol ITypeSymbol
displacement int
excludeTypes HashSet
extensionMethodLookup CompilationLookup
lambdaStack Stack
log IAsyncRewriterLogger
semanticModel Microsoft.CodeAnalysis.SemanticModel

Public Methods

Method Description
VisitAnonymousMethodExpression ( Microsoft.CodeAnalysis.CSharp.Syntax.AnonymousMethodExpressionSyntax node ) : Microsoft.CodeAnalysis.SyntaxNode
VisitInvocationExpression ( InvocationExpressionSyntax node ) : Microsoft.CodeAnalysis.SyntaxNode
VisitParenthesizedLambdaExpression ( Microsoft.CodeAnalysis.CSharp.Syntax.ParenthesizedLambdaExpressionSyntax node ) : Microsoft.CodeAnalysis.SyntaxNode
VisitSimpleLambdaExpression ( Microsoft.CodeAnalysis.CSharp.Syntax.SimpleLambdaExpressionSyntax node ) : Microsoft.CodeAnalysis.SyntaxNode

Protected Methods

Method Description
GetArgumentType ( Microsoft.CodeAnalysis.CSharp.Syntax.ArgumentSyntax syntax ) : ITypeSymbol
InspectExpression ( InvocationExpressionSyntax node, int cancellationTokenPos, IMethodSymbol candidate, bool explicitExtensionMethodCall ) : ExpressionSyntax
MethodInvocationInspector ( IAsyncRewriterLogger log, CompilationLookup extensionMethodLookup, Microsoft.CodeAnalysis.SemanticModel semanticModel, HashSet excludeTypes, ITypeSymbol cancellationTokenSymbol, Microsoft.CodeAnalysis.CSharp.Syntax.MethodDeclarationSyntax methodSyntax ) : System

Private Methods

Method Description
GetInvocationTargetType ( int pos, InvocationExpressionSyntax node, IMethodSymbol methodSymbol ) : ITypeSymbol

Method Details

GetArgumentType() protected method

protected GetArgumentType ( Microsoft.CodeAnalysis.CSharp.Syntax.ArgumentSyntax syntax ) : ITypeSymbol
syntax Microsoft.CodeAnalysis.CSharp.Syntax.ArgumentSyntax
return ITypeSymbol

InspectExpression() protected abstract method

protected abstract InspectExpression ( InvocationExpressionSyntax node, int cancellationTokenPos, IMethodSymbol candidate, bool explicitExtensionMethodCall ) : ExpressionSyntax
node InvocationExpressionSyntax
cancellationTokenPos int
candidate IMethodSymbol
explicitExtensionMethodCall bool
return ExpressionSyntax

MethodInvocationInspector() protected method

protected MethodInvocationInspector ( IAsyncRewriterLogger log, CompilationLookup extensionMethodLookup, Microsoft.CodeAnalysis.SemanticModel semanticModel, HashSet excludeTypes, ITypeSymbol cancellationTokenSymbol, Microsoft.CodeAnalysis.CSharp.Syntax.MethodDeclarationSyntax methodSyntax ) : System
log IAsyncRewriterLogger
extensionMethodLookup CompilationLookup
semanticModel Microsoft.CodeAnalysis.SemanticModel
excludeTypes HashSet
cancellationTokenSymbol ITypeSymbol
methodSyntax Microsoft.CodeAnalysis.CSharp.Syntax.MethodDeclarationSyntax
return System

VisitAnonymousMethodExpression() public method

public VisitAnonymousMethodExpression ( Microsoft.CodeAnalysis.CSharp.Syntax.AnonymousMethodExpressionSyntax node ) : Microsoft.CodeAnalysis.SyntaxNode
node Microsoft.CodeAnalysis.CSharp.Syntax.AnonymousMethodExpressionSyntax
return Microsoft.CodeAnalysis.SyntaxNode

VisitInvocationExpression() public method

public VisitInvocationExpression ( InvocationExpressionSyntax node ) : Microsoft.CodeAnalysis.SyntaxNode
node InvocationExpressionSyntax
return Microsoft.CodeAnalysis.SyntaxNode

VisitParenthesizedLambdaExpression() public method

public VisitParenthesizedLambdaExpression ( Microsoft.CodeAnalysis.CSharp.Syntax.ParenthesizedLambdaExpressionSyntax node ) : Microsoft.CodeAnalysis.SyntaxNode
node Microsoft.CodeAnalysis.CSharp.Syntax.ParenthesizedLambdaExpressionSyntax
return Microsoft.CodeAnalysis.SyntaxNode

VisitSimpleLambdaExpression() public method

public VisitSimpleLambdaExpression ( Microsoft.CodeAnalysis.CSharp.Syntax.SimpleLambdaExpressionSyntax node ) : Microsoft.CodeAnalysis.SyntaxNode
node Microsoft.CodeAnalysis.CSharp.Syntax.SimpleLambdaExpressionSyntax
return Microsoft.CodeAnalysis.SyntaxNode

Property Details

cancellationTokenSymbol protected property

protected ITypeSymbol cancellationTokenSymbol
return ITypeSymbol

displacement protected property

protected int displacement
return int

excludeTypes protected property

protected HashSet excludeTypes
return HashSet

extensionMethodLookup protected property

protected CompilationLookup,Shaolinq.AsyncRewriter extensionMethodLookup
return CompilationLookup

lambdaStack protected property

protected Stack lambdaStack
return Stack

log protected property

protected IAsyncRewriterLogger log
return IAsyncRewriterLogger

semanticModel protected property

protected SemanticModel,Microsoft.CodeAnalysis semanticModel
return Microsoft.CodeAnalysis.SemanticModel