21 overrides of IsExtensionMethod
Microsoft.CodeAnalysis.CSharp (21)
Lowering\IteratorRewriter\IteratorFinallyMethodSymbol.cs (1)
80
public override bool
IsExtensionMethod
Symbols\AnonymousTypes\SynthesizedSymbols\AnonymousType.SynthesizedMethodBase.cs (1)
89
public sealed override bool
IsExtensionMethod
Symbols\ErrorMethodSymbol.cs (1)
193
public override bool
IsExtensionMethod
Symbols\FunctionPointers\FunctionPointerMethodSymbol.cs (1)
821
public override bool
IsExtensionMethod
=> false;
Symbols\Metadata\PE\PEMethodSymbol.cs (1)
994
public override bool
IsExtensionMethod
Symbols\ReducedExtensionMethodSymbol.cs (1)
417
public override bool
IsExtensionMethod
Symbols\SignatureOnlyMethodSymbol.cs (1)
135
public override bool
IsExtensionMethod
{ get { throw ExceptionUtilities.Unreachable(); } }
Symbols\Source\LambdaSymbol.cs (1)
280
public override bool
IsExtensionMethod
Symbols\Source\LocalFunctionSymbol.cs (1)
329
public override bool
IsExtensionMethod
Symbols\Source\SourceMemberMethodSymbol.cs (1)
562
public sealed override bool
IsExtensionMethod
Symbols\Synthesized\SynthesizedDelegateSymbol.cs (1)
106
public override bool
IsExtensionMethod
Symbols\Synthesized\SynthesizedEntryPointSymbol.cs (1)
198
public override bool
IsExtensionMethod
Symbols\Synthesized\SynthesizedGlobalMethodSymbol.cs (1)
311
public override bool
IsExtensionMethod
Symbols\Synthesized\SynthesizedImplementationMethod.cs (1)
201
public sealed override bool
IsExtensionMethod
Symbols\Synthesized\SynthesizedInstanceConstructor.cs (1)
248
public sealed override bool
IsExtensionMethod
Symbols\Synthesized\SynthesizedInteractiveInitializerMethod.cs (1)
84
public override bool
IsExtensionMethod
Symbols\Synthesized\SynthesizedIntrinsicOperatorSymbol.cs (1)
122
public override bool
IsExtensionMethod
Symbols\Synthesized\SynthesizedPropertySymbol.cs (1)
84
public override bool
IsExtensionMethod
=> false;
Symbols\Synthesized\SynthesizedSealedPropertyAccessor.cs (1)
149
public override bool
IsExtensionMethod
Symbols\Synthesized\SynthesizedStaticConstructor.cs (1)
263
public override bool
IsExtensionMethod
Symbols\Wrapped\WrappedMethodSymbol.cs (1)
71
public override bool
IsExtensionMethod
61 references to IsExtensionMethod
Microsoft.CodeAnalysis.CSharp (61)
Binder\Binder.ValueChecks.cs (1)
2912
Debug.Assert(methodInfo.Method?.
IsExtensionMethod
!= false);
Binder\Binder_Await.cs (1)
728
if (getResultMethod.
IsExtensionMethod
|| getResultMethod.IsExtensionBlockMember())
Binder\Binder_Conversions.cs (1)
3688
if (method.
IsExtensionMethod
)
Binder\Binder_Deconstruct.cs (1)
688
for (int i = (deconstructMethod.
IsExtensionMethod
? 1 : 0); i < parameters.Length; i++)
Binder\Binder_Expressions.cs (2)
8973
if (method.
IsExtensionMethod
11285
bool memberCountsAsStatic = extensionMember is MethodSymbol {
IsExtensionMethod
: true } ? false : extensionMember.IsStatic;
Binder\Binder_Lookup.cs (1)
207
bool isExtensionMethod = candidate is MethodSymbol {
IsExtensionMethod
: true };
Binder\Binder_Patterns.cs (1)
1681
int skippedExtensionParameters = deconstructMethod?.
IsExtensionMethod
== true ? 1 : 0;
Binder\Binder_Statements.cs (1)
774
if (disposeMethod is not null && (disposeMethod.
IsExtensionMethod
|| disposeMethod.IsExtensionBlockMember()))
Binder\Binder_Symbols.cs (1)
1592
if (symbol is MethodSymbol {
IsExtensionMethod
: true } extensionMethod)
Binder\ForEachLoopBinder.cs (13)
241
if (getEnumeratorMethod.
IsExtensionMethod
)
591
builder.GetEnumeratorInfo.Method.
IsExtensionMethod
||
885
Debug.Assert(!builder.ViaExtensionMethod || builder.GetEnumeratorInfo.Method.
IsExtensionMethod
|| builder.GetEnumeratorInfo.Method.IsExtensionBlockMember());
932
Debug.Assert(!builder.ViaExtensionMethod || builder.GetEnumeratorInfo.Method.
IsExtensionMethod
|| builder.GetEnumeratorInfo.Method.IsExtensionBlockMember());
1034
Debug.Assert(!(viaExtensionMethod && builder.GetEnumeratorInfo.Method.
IsExtensionMethod
&& builder.GetEnumeratorInfo.Method.Parameters.IsDefaultOrEmpty));
1035
Debug.Assert(!(viaExtensionMethod && !builder.GetEnumeratorInfo.Method.
IsExtensionMethod
&& !builder.GetEnumeratorInfo.Method.IsExtensionBlockMember()));
1041
if (builder.GetEnumeratorInfo.Method.
IsExtensionMethod
)
1213
Debug.Assert(!patternDisposeMethod.
IsExtensionMethod
&& !patternDisposeMethod.IsExtensionBlockMember(),
1464
Debug.Assert(!result.
IsExtensionMethod
&& !result.IsExtensionBlockMember());
1545
Debug.Assert(result.
IsExtensionMethod
|| result.IsExtensionBlockMember());
1559
if (result.
IsExtensionMethod
)
1958
Debug.Assert((extensionReceiverOpt != null) == (method.
IsExtensionMethod
|| method.IsExtensionBlockMember()));
1968
if (method.
IsExtensionMethod
)
Binder\RefSafetyAnalysis.cs (1)
686
if (method.
IsExtensionMethod
)
Binder\Semantics\Conversions\Conversions.cs (2)
346
Debug.Assert(method.
IsExtensionMethod
|| method.IsExtensionBlockMember());
350
if (method.
IsExtensionMethod
)
Binder\Semantics\OverloadResolution\MethodGroup.cs (1)
54
Debug.Assert(method.
IsExtensionMethod
|| method.IsExtensionBlockMember());
Binder\Semantics\OverloadResolution\OverloadResolution.cs (1)
616
if (member is MethodSymbol {
IsExtensionMethod
: true })
Binder\UsingStatementBinder.cs (1)
203
Debug.Assert(!disposeMethod.
IsExtensionMethod
&& !disposeMethod.IsExtensionBlockMember(),
Binder\WithUsingNamespacesAndTypesBinder.cs (1)
159
if (!symbol.IsStatic || ((MethodSymbol)symbol).
IsExtensionMethod
)
Compilation\CSharpSemanticModel.cs (3)
1687
if (symbol is MethodSymbol {
IsExtensionMethod
: true } extensionMethod)
4806
if (call.InvokedAsExtensionMethod && method.
IsExtensionMethod
&& method.MethodKind != MethodKind.ReducedExtension)
4823
if (delegateCreation.IsExtensionMethod && method.
IsExtensionMethod
&& (receiverOpt != null))
FlowAnalysis\AbstractFlowPass.cs (1)
1694
return method.IsStatic && !method.
IsExtensionMethod
;
FlowAnalysis\NullableWalker.cs (4)
4099
var argIndex = initializer.AddMethod.
IsExtensionMethod
? 1 : 0;
4110
if (!addMethod.
IsExtensionMethod
&& !addMethod.IsExtensionBlockMember())
12404
&& (enumeratorMethodInfo.Method.
IsExtensionMethod
|| enumeratorMethodInfo.Method.IsExtensionBlockMember()))
12476
&& (getEnumeratorMethod.
IsExtensionMethod
|| getEnumeratorMethod.IsExtensionBlockMember())
FlowAnalysis\NullableWalker.DebugVerifier.cs (1)
246
if (enumeratorInfo.GetEnumeratorInfo.Method.
IsExtensionMethod
) // Tracked by https://github.com/dotnet/roslyn/issues/78828: Test this code path with new extensions
Lowering\LocalRewriter\LocalRewriter.PatternLocalRewriter.cs (1)
175
Debug.Assert(method.
IsExtensionMethod
);
Lowering\LocalRewriter\LocalRewriter_Call.cs (2)
215
var needToReduce = receiverOpt is not (null or BoundTypeExpression) && interceptor.
IsExtensionMethod
;
264
if (invokedAsExtensionMethod && interceptor.IsStatic && !interceptor.
IsExtensionMethod
)
Lowering\LocalRewriter\LocalRewriter_ForEachStatement.cs (1)
171
if (getEnumeratorInfo.Method.
IsExtensionMethod
)
Lowering\LocalRewriter\LocalRewriter_ObjectOrCollectionInitializerExpression.cs (3)
103
Debug.Assert(!elementInitializer.AddMethod.
IsExtensionMethod
);
185
.Skip(addMethod.
IsExtensionMethod
? 1 : 0)
232
Debug.Assert(addMethod.
IsExtensionMethod
);
Lowering\LocalRewriter\LocalRewriter_UsingStatement.cs (2)
497
if (method.
IsExtensionMethod
)
532
invokedAsExtensionMethod: method.
IsExtensionMethod
);
Operations\CSharpOperationFactory.cs (1)
2013
invokedAsExtensionMethod: info.Method.
IsExtensionMethod
Symbols\MemberSymbolExtensions.cs (1)
272
if (method.
IsExtensionMethod
)
Symbols\MethodSymbol.cs (2)
773
if (!this.
IsExtensionMethod
|| this.MethodKind == MethodKind.ReducedExtension || receiverType.IsVoidType())
789
return (this.
IsExtensionMethod
&& this.MethodKind != MethodKind.ReducedExtension) ? ReducedExtensionMethodSymbol.Create(this) : null;
Symbols\NamedTypeSymbol.cs (1)
363
if (method.
IsExtensionMethod
&&
Symbols\PublicModel\MethodSymbol.cs (1)
327
bool IMethodSymbol.IsExtensionMethod => _underlying.
IsExtensionMethod
;
Symbols\ReducedExtensionMethodSymbol.cs (4)
40
Debug.Assert(method.
IsExtensionMethod
&& method.MethodKind != MethodKind.ReducedExtension);
75
Debug.Assert(method.
IsExtensionMethod
&& method.MethodKind != MethodKind.ReducedExtension);
95
Debug.Assert(reducedFrom.
IsExtensionMethod
);
116
Debug.Assert(method.
IsExtensionMethod
);
Symbols\Source\SourceComplexParameterSymbol.cs (1)
1653
if (addMethods[0].
IsExtensionMethod
|| addMethods[0].IsExtensionBlockMember()) // No need to check other methods, extensions are never mixed with instance methods
Symbols\Source\SourceMethodSymbol.cs (1)
242
if (target.
IsExtensionMethod
)
Symbols\Wrapped\WrappedMethodSymbol.cs (1)
75
return UnderlyingMethod.
IsExtensionMethod
;