14 overrides of IsInterface
Microsoft.CodeAnalysis.CSharp (13)
Symbols\AnonymousTypes\PublicSymbols\AnonymousManager.TypeOrDelegatePublicSymbol.cs (1)
177internal sealed override bool IsInterface
Symbols\AnonymousTypes\SynthesizedSymbols\AnonymousType.TypeOrDelegateTemplateSymbol.cs (1)
216internal sealed override bool IsInterface
Symbols\ErrorTypeSymbol.cs (1)
242internal sealed override bool IsInterface
Symbols\Metadata\PE\PENamedTypeSymbol.cs (1)
2112internal sealed override bool IsInterface
Symbols\Source\SourceMemberContainerSymbol.cs (1)
820internal sealed override bool IsInterface
Symbols\Synthesized\ReadOnlyListType\SynthesizedReadOnlyListEnumeratorTypeSymbol.cs (1)
199internal override bool IsInterface => false;
Symbols\Synthesized\ReadOnlyListType\SynthesizedReadOnlyListTypeSymbol.cs (1)
876internal override bool IsInterface => false;
Symbols\Synthesized\SynthesizedContainer.cs (1)
48internal sealed override bool IsInterface => this.TypeKind == TypeKind.Interface;
Symbols\Synthesized\SynthesizedEmbeddedAttributeSymbol.cs (1)
144internal override bool IsInterface => false;
Symbols\Synthesized\SynthesizedHotReloadExceptionSymbol.cs (1)
126internal override bool IsInterface => false;
Symbols\Synthesized\SynthesizedInlineArrayTypeSymbol.cs (1)
130internal override bool IsInterface => false;
Symbols\Synthesized\SynthesizedPrivateImplementationDetailsType.cs (1)
113internal override bool IsInterface => false;
Symbols\Wrapped\WrappedNamedTypeSymbol.cs (1)
119internal override bool IsInterface
Microsoft.CodeAnalysis.CSharp.Symbol.UnitTests (1)
Symbols\MockNamedTypeSymbol.cs (1)
151internal override bool IsInterface
103 references to IsInterface
Microsoft.CodeAnalysis.CSharp (98)
Binder\Binder.ValueChecks.cs (2)
3211if (!_underlyingParameter.ContainingType.IsInterface || _type.IsReferenceType) 3243if (!_underlyingParameter.ContainingType.IsInterface || _type.IsReferenceType)
Binder\Binder_Expressions.cs (4)
1962(currentType.IsInterface && (declaringType.IsObjectType() || currentType.AllInterfacesNoUseSiteDiagnostics.Contains(declaringType)))) 2309(currentType.IsInterface && (declaringType.IsObjectType() || currentType.AllInterfacesNoUseSiteDiagnostics.Contains(declaringType)))) 4871containingType.IsInterface); 9037if (symbol.ContainingType?.IsInterface == true)
Binder\Binder_Invocation.cs (1)
1067if (call.ReceiverOpt.Type.IsRestrictedType() && !call.Method.ContainingType.IsInterface && !TypeSymbol.Equals(call.Method.ContainingType, call.ReceiverOpt.Type, TypeCompareKind.ConsiderEverything2))
Binder\Binder_Lookup.cs (5)
1091Debug.Assert(type.IsInterface); 1159if (@interface.IsInterface && !cycleGuard.ContainsReference(originalDefinition = @interface.OriginalDefinition) && visited.Add(@interface)) 1219Debug.Assert(type.IsInterface); 1284return baseType.IsInterface && GetBaseInterfaces(derivedType, basesBeingResolved, ref useSiteInfo).Contains(baseType); 1311var hidingContainerIsInterface = hidingContainer.IsInterface;
Binder\Binder_Operators.cs (4)
1519Debug.Assert(!(signature.Method?.ContainingType?.IsInterface ?? false)); 1693(t.IsInterface && (signature.Method.IsAbstract || signature.Method.IsVirtual) && 2119if (operatorMethod.ContainingType.IsInterface && 3807if (methodOpt?.ContainingType?.IsInterface == true && methodOpt.IsStatic)
Binder\Semantics\AccessCheck.cs (2)
557bool baseTypeIsInterface = baseType.IsInterface; 608if (!currentBase.IsInterface)
Binder\Semantics\Conversions\ConversionsBase.cs (3)
3001Debug.Assert(targetInterfaceType.IsErrorType() || targetInterfaceType.IsInterface); 3035Debug.Assert(targetInterfaceType.IsErrorType() || targetInterfaceType.IsInterface); 3238IsInterface: true,
Binder\Semantics\Conversions\UserDefinedExplicitConversions.cs (2)
104if (declaringType.IsInterface) 119if (declaringType.IsInterface)
Binder\Semantics\Conversions\UserDefinedImplicitConversions.cs (2)
257if (declaringType.IsInterface) 272if (declaringType.IsInterface)
Binder\Semantics\Operators\BinaryOperatorOverloadResolution.cs (1)
271if (!@interface.IsInterface)
Binder\Semantics\Operators\UnaryOperatorOverloadResolution.cs (1)
705if (!@interface.IsInterface)
Binder\Semantics\OverloadResolution\MethodTypeInference.cs (5)
2221if (constructedSource.IsInterface || constructedSource.IsDelegateType()) 2306if (!target.IsInterface) 2621if (constructedTarget.IsInterface || constructedTarget.IsDelegateType()) 2687if (!source.IsInterface) 3157Debug.Assert(target.IsInterface);
Compilation\CSharpCompilation.cs (1)
1958if (mainType is null || mainType.IsGenericType || (mainType.TypeKind != TypeKind.Class && mainType.TypeKind != TypeKind.Struct && !mainType.IsInterface))
Compiler\ClsComplianceChecker.cs (2)
502if ((object)containingType != null && containingType.IsInterface) 518if (symbol.IsInterface)
Emitter\Model\NamedTypeSymbolAdapter.cs (3)
344if (AdaptedNamedTypeSymbol.IsInterface) 381if (AdaptedNamedTypeSymbol.IsInterface) 564return AdaptedNamedTypeSymbol.IsInterface;
Emitter\NoPia\EmbeddedTypesManager.cs (1)
376bool isInterface = (namedType.IsInterface);
FlowAnalysis\NullableWalker.cs (2)
6808if (implementationMethod.ContainingType.IsInterface) 8709if (symbolContainer.IsInterface)
Lowering\DiagnosticsPass_Warnings.cs (1)
357if ((object)nt == null || !nt.IsReferenceType || nt.IsInterface)
Lowering\LocalRewriter\LocalRewriter_Conversion.cs (1)
1868Debug.Assert(!meth.ContainingType.IsInterface);
Lowering\LocalRewriter\LocalRewriter_ForEachStatement.cs (1)
498if (!receiver.Type.IsReferenceType && method.ContainingType.IsInterface)
Symbols\BaseTypeAnalysis.cs (1)
43if (type.IsInterface)
Symbols\ConstraintsHelper.cs (1)
1093if (typeArgument.Type is NamedTypeSymbol { IsInterface: true } iface && SelfOrBaseHasStaticAbstractMember(iface, ref useSiteInfo, out Symbol member))
Symbols\MemberSymbolExtensions.cs (1)
364Debug.Assert(symbol.ContainingType.IsInterface);
Symbols\Metadata\PE\PEMethodSymbol.cs (2)
1364if (!method.ContainingType.IsInterface) 1386if (method.ContainingType.IsInterface)
Symbols\Metadata\PE\SymbolFactory.cs (1)
114if (!typeToCheck.IsInterface)
Symbols\MethodSymbolExtensions.cs (1)
222(containingType.IsStructType() == true || (containingType.IsInterface && method.IsImplementable())) &&
Symbols\OverriddenOrHiddenMembersHelpers.cs (1)
129if (containingType.IsInterface)
Symbols\Retargeting\RetargetingSymbolTranslator.cs (2)
327bool isInterface = type.IsInterface; 522!genericType.IsInterface)
Symbols\Source\ModifierUtils.cs (1)
505if (symbol.ContainingType?.IsInterface == true && !symbol.ContainingAssembly.RuntimeSupportsDefaultInterfaceImplementation)
Symbols\Source\SourceConstructorSymbol.cs (1)
151bool isInterface = containingType.IsInterface;
Symbols\Source\SourceDestructorSymbol.cs (1)
134var mods = ModifierUtils.MakeAndCheckNonTypeMemberModifiers(isOrdinaryMethod: false, isForInterfaceMember: containingType.IsInterface, modifiers, DeclarationModifiers.None, allowedModifiers, location, diagnostics, out modifierErrors, out _);
Symbols\Source\SourceEventSymbol.cs (3)
505bool isInterface = this.ContainingType.IsInterface; 586Debug.Assert(!IsStatic || ContainingType.IsInterface || (!IsAbstract && !IsVirtual)); // Otherwise should have been reported and cleared earlier. 590bool isExplicitInterfaceImplementationInInterface = ContainingType.IsInterface && IsExplicitInterfaceImplementation;
Symbols\Source\SourceMemberContainerSymbol.cs (1)
315if (((NamedTypeSymbol)containingSymbol).IsInterface)
Symbols\Source\SourceMemberContainerSymbol_ImplementationChecks.cs (4)
269wasImplementingMemberFound && implementingMember.ContainingType.IsInterface) 681if (symbol.ContainingType.IsInterface) 1597if (!hidingMember.ContainingType.IsInterface) 1876if (implementingMethod.ContainingType.IsInterface ||
Symbols\Source\SourceMemberFieldSymbol.cs (1)
178bool isInterface = containingType.IsInterface;
Symbols\Source\SourceMemberMethodSymbol.cs (2)
573if (IsExplicitInterfaceImplementation && _containingType.IsInterface) 1056if (_containingType.IsInterface)
Symbols\Source\SourceMethodSymbolWithAttributes.cs (2)
626if (ContainingType.IsInterface || IsExplicitInterfaceImplementation) 1651return this.ContainingType.IsInterface &&
Symbols\Source\SourceOrdinaryMethodSymbol.cs (4)
436return ModifierUtils.MakeAndCheckNonTypeMemberModifiers(isOrdinaryMethod: true, isForInterfaceMember: containingType.IsInterface, 710bool isInterface = containingType.IsInterface; 825Debug.Assert(!IsStatic || ContainingType.IsInterface || (!IsAbstract && !IsVirtual)); // Otherwise should have been reported and cleared earlier. 827bool isExplicitInterfaceImplementationInInterface = isExplicitInterfaceImplementation && ContainingType.IsInterface;
Symbols\Source\SourcePropertyAccessorSymbol.cs (1)
509bool isInterface = containingType.IsInterface;
Symbols\Source\SourcePropertySymbol.cs (1)
382bool isInterface = containingType.IsInterface;
Symbols\Source\SourcePropertySymbolBase.cs (5)
307if (ContainingType.IsInterface && !IsStatic) 923ContainingType.IsInterface && 1082Debug.Assert(!IsStatic || ContainingType.IsInterface || (!IsAbstract && !IsVirtual)); // Otherwise should have been reported and cleared earlier. 1084bool isExplicitInterfaceImplementationInInterface = isExplicitInterfaceImplementation && ContainingType.IsInterface; 1613if (ContainingType.IsInterface || IsExplicitInterfaceImplementation)
Symbols\Source\SourceUserDefinedOperatorSymbolBase.cs (4)
63if (this.ContainingType.IsInterface && 145else if (IsSealed && !IsOverride && !(IsExplicitInterfaceImplementation && ContainingType.IsInterface && IsAbstract)) 154else if (IsAbstract && !ContainingType.IsAbstract && !ContainingType.IsInterface) 577return ContainingType.IsInterface && (IsAbstract || IsVirtual);
Symbols\SymbolExtensions.cs (2)
71if (originalSuperType.IsInterface) 527return !symbol.IsSealed && (symbol.IsAbstract || symbol.IsVirtual) && (symbol.ContainingType?.IsInterface ?? false);
Symbols\TypeSymbol.cs (6)
743if ((object)interfaceType == null || !interfaceType.IsInterface) 822Debug.Assert((object)interfaceType != null && interfaceType.IsInterface); 1110return !symbolAndDiagnostics.Symbol.ContainingType.IsInterface; 1283if (!interfaceType.IsInterface) 1393Debug.Assert(interfaceType.IsInterface); 1577if ((object)implementingPropertyOrEvent != null && !implementingPropertyOrEvent.ContainingType.IsInterface)
Symbols\TypeSymbolExtensions.cs (3)
31if (@interface.IsInterface && TypeSymbol.Equals(@interface, superInterface, TypeCompareKind.ConsiderEverything2)) 330return type.Kind == SymbolKind.NamedType && ((NamedTypeSymbol)type).IsInterface; 2181return type is NamedTypeSymbol { Name: "INumberBase", IsInterface: true, Arity: 1, ContainingType: null } &&
Symbols\VarianceSafety.cs (1)
31Debug.Assert((object)interfaceType != null && interfaceType.IsInterface);
Symbols\Wrapped\WrappedNamedTypeSymbol.cs (1)
123return _underlyingType.IsInterface;
Microsoft.CodeAnalysis.CSharp.Emit3.UnitTests (1)
Symbols\UserDefinedCompoundAssignmentOperatorsTests.cs (1)
8115Assert.Equal(m.ContainingType.IsInterface, m.IsVirtual);
Microsoft.CodeAnalysis.CSharp.Symbol.UnitTests (4)
Symbols\DefaultInterfaceImplementationTests.cs (4)
62717Assert.True(baseInterface.IsInterface); 62718Assert.True(i1.IsInterface); 62843Assert.True(baseInterface.IsInterface); 62844Assert.True(i1.IsInterface);