24 overrides of TypeKind
Microsoft.CodeAnalysis.CSharp (24)
Lowering\AsyncRewriter\AsyncStateMachine.cs (1)
64public override TypeKind TypeKind
Lowering\ClosureConversion\SynthesizedClosureEnvironment.cs (1)
38public override TypeKind TypeKind { get; }
Lowering\IteratorRewriter\IteratorStateMachine.cs (1)
46public override TypeKind TypeKind
Lowering\LocalRewriter\DelegateCacheContainer.cs (1)
49public override TypeKind TypeKind => TypeKind.Class;
Lowering\LocalRewriter\DynamicSiteContainer.cs (1)
40public override TypeKind TypeKind
Symbols\AnonymousTypes\PublicSymbols\AnonymousManager.TypeOrDelegatePublicSymbol.cs (1)
171public abstract override TypeKind TypeKind { get; }
Symbols\AnonymousTypes\SynthesizedSymbols\AnonymousType.DelegateTemplateSymbol.cs (1)
226public override TypeKind TypeKind => TypeKind.Delegate;
Symbols\AnonymousTypes\SynthesizedSymbols\AnonymousType.TemplateSymbol.cs (1)
101public override TypeKind TypeKind
Symbols\ArrayTypeSymbol.cs (1)
296public override TypeKind TypeKind
Symbols\DynamicTypeSymbol.cs (1)
62public override TypeKind TypeKind
Symbols\ErrorTypeSymbol.cs (1)
230public sealed override TypeKind TypeKind
Symbols\FunctionPointers\FunctionPointerTypeSymbol.cs (1)
76public override TypeKind TypeKind => TypeKind.FunctionPointer;
Symbols\FunctionTypeSymbol.cs (1)
104public override TypeKind TypeKind => TypeKindInternal.FunctionType;
Symbols\PointerTypeSymbol.cs (1)
167public override TypeKind TypeKind
Symbols\Source\SourceFixedFieldSymbol.cs (1)
168public override TypeKind TypeKind
Symbols\Source\SourceMemberContainerSymbol.cs (1)
792public override TypeKind TypeKind
Symbols\Synthesized\ReadOnlyListType\SynthesizedReadOnlyListEnumeratorTypeSymbol.cs (1)
138public override TypeKind TypeKind => TypeKind.Class;
Symbols\Synthesized\ReadOnlyListType\SynthesizedReadOnlyListTypeSymbol.cs (1)
815public override TypeKind TypeKind => TypeKind.Class;
Symbols\Synthesized\SynthesizedEmbeddedAttributeSymbol.cs (1)
74public override TypeKind TypeKind => TypeKind.Class;
Symbols\Synthesized\SynthesizedHotReloadExceptionSymbol.cs (1)
92public override TypeKind TypeKind => TypeKind.Class;
Symbols\Synthesized\SynthesizedInlineArrayTypeSymbol.cs (1)
63public override TypeKind TypeKind => TypeKind.Struct;
Symbols\Synthesized\SynthesizedPrivateImplementationDetailsType.cs (1)
56public override TypeKind TypeKind => TypeKind.Class;
Symbols\TypeParameterSymbol.cs (1)
195public sealed override TypeKind TypeKind
Symbols\Wrapped\WrappedNamedTypeSymbol.cs (1)
119public override TypeKind TypeKind
303 references to TypeKind
Microsoft.CodeAnalysis.CSharp (303)
Binder\Binder_Attributes.cs (2)
58if (boundTypeSymbol.TypeKind != TypeKind.Error) 728parameter.Type.TypeKind == TypeKind.Array &&
Binder\Binder_Constraints.cs (2)
582switch (type.TypeKind) 627throw ExceptionUtilities.UnexpectedValue(type.TypeKind);
Binder\Binder_Conversions.cs (9)
778switch (type.TypeKind) 2823Debug.Assert(delegateType is NamedTypeSymbol { TypeKind: TypeKind.Delegate, DelegateInvokeMethod: { HasUseSiteError: false } } 2824|| delegateType.TypeKind == TypeKind.FunctionPointer, 2870delegateType.TypeKind, 2880Error(diagnostics, getMethodMismatchErrorCode(delegateType.TypeKind), errorLocation, method, delegateType); 2888Error(diagnostics, getRefMismatchErrorCode(delegateType.TypeKind), errorLocation, method, delegateType); 2899delegateType.TypeKind, 3014Debug.Assert(Conversions.IsAssignableFromMulticastDelegate(delegateOrFuncPtrType, ref discardedUseSiteInfo) || delegateOrFuncPtrType.TypeKind == TypeKind.Delegate || delegateOrFuncPtrType.TypeKind == TypeKind.FunctionPointer);
Binder\Binder_Crefs.cs (3)
554switch (type.TypeKind) 601throw ExceptionUtilities.UnexpectedValue(type.TypeKind); 994Debug.Assert(type.TypeKind != TypeKind.Error || typeSyntax.ContainsDiagnostics || !typeSyntax.SyntaxTree.ReportDocumentationCommentDiagnostics(), "Why wasn't there a diagnostic?");
Binder\Binder_Expressions.cs (18)
2368if (this.ContainingType.TypeKind == TypeKind.Submission 2372if (memberDeclaringType.TypeKind == TypeKind.Submission) 2823if (targetType.TypeKind != TypeKind.Delegate || 2874var errorCode = targetType.TypeKind switch 4830if ((containingType.TypeKind == TypeKind.Enum || containingType.TypeKind == TypeKind.Struct) && initializerArgumentListOpt == null) 4881else if (initializerArgumentListOpt != null && containingType.TypeKind == TypeKind.Struct) 5202switch (type.TypeKind) 5221throw ExceptionUtilities.UnexpectedValue(type.TypeKind); 5238throw ExceptionUtilities.UnexpectedValue(type.TypeKind); 5451else if (argument.Type.TypeKind == TypeKind.Delegate) 5551Debug.Assert(type.TypeKind is TypeKind.Class or TypeKind.Struct); 6960Debug.Assert(coClassType.TypeKind == TypeKind.Class || coClassType.TypeKind == TypeKind.Error); 7307if (type.TypeKind == TypeKind.Enum) 7889if (leftType.TypeKind == TypeKind.TypeParameter) 9083if (receiverOpt is not BoundTypeExpression { Type: { TypeKind: TypeKind.TypeParameter } }) 9661switch (exprType.TypeKind)
Binder\Binder_InterpolatedString.cs (2)
397if (value.Type?.TypeKind == TypeKind.Dynamic) 433&& unconvertedInterpolatedString.Parts.All(p => p is not BoundStringInsert { Value.Type.TypeKind: TypeKind.Dynamic });
Binder\Binder_Lookup.cs (4)
253switch (type.TypeKind) 285throw ExceptionUtilities.UnexpectedValue(type.TypeKind); 892Debug.Assert(!type.IsInterfaceType() && type.TypeKind != TypeKind.TypeParameter); 1951switch (type.TypeKind)
Binder\Binder_Operators.cs (10)
606leftType?.TypeKind == TypeKind.FunctionPointer && rightType?.TypeKind == TypeKind.FunctionPointer) 816(object)left.Type != null && left.Type.TypeKind == TypeKind.Delegate) 3216return targetType.TypeKind == TypeKind.Error; 3273var targetTypeKind = targetType.TypeKind; 3327if (operandType.TypeKind == TypeKind.Dynamic) 3700var targetTypeKind = targetType.TypeKind; 3804var operandTypeKind = operandType.TypeKind; 3818operandTypeKind = operandType.TypeKind; 3825targetTypeKind = targetType.TypeKind;
Binder\Binder_Patterns.cs (1)
1252if (iTupleType.TypeKind != TypeKind.Interface)
Binder\Binder_Query.cs (1)
963if (ultimateReceiver.Type.TypeKind == TypeKind.TypeParameter)
Binder\Binder_QueryErrors.cs (1)
82if (instanceType.TypeKind == TypeKind.Array || name == "Cast" && HasCastToQueryProvider(instanceType, ref useSiteInfo))
Binder\Binder_Statements.cs (3)
2325if (targetType.TypeKind == TypeKind.Error) 2385if (targetType.TypeKind == TypeKind.TypeParameter) 2482switch (targetType.TypeKind)
Binder\ForEachLoopBinder.cs (3)
1646switch (enumeratorType.TypeKind) 1657throw ExceptionUtilities.UnexpectedValue(enumeratorType.TypeKind); 1841if (type.TypeKind == TypeKind.TypeParameter)
Binder\PatternExplainer.cs (1)
649if (type is NamedTypeSymbol { TypeKind: TypeKind.Enum } e)
Binder\Semantics\AccessCheck.cs (3)
368if (containingType.TypeKind == TypeKind.Submission) 430if (originalContainingType.TypeKind == TypeKind.Submission) 700: containingType.TypeKind == TypeKind.Struct ? ErrorCode.ERR_ProtectedInStruct
Binder\Semantics\Conversions\Conversions.cs (1)
524if (spanType.TypeKind == TypeKind.Struct && spanType.IsRefLikeType)
Binder\Semantics\Conversions\ConversionsBase.cs (3)
2179if (otherType.TypeKind == TypeKind.Enum) 2648switch (source.TypeKind) 3308if ((source.TypeKind == TypeKind.TypeParameter) &&
Binder\Semantics\Conversions\UserDefinedExplicitConversions.cs (1)
266if (op.ReturnsVoid || op.ParameterCount != 1 || op.ReturnType.TypeKind == TypeKind.Error)
Binder\Semantics\Operators\OperatorFacts.cs (1)
19switch (type.TypeKind)
Binder\Semantics\OverloadResolution\MethodTypeInference.cs (7)
2260if (target.TypeKind != TypeKind.Class) 2279if (source.TypeKind == TypeKind.Class) 2283else if (source.TypeKind == TypeKind.TypeParameter) 2319switch (source.TypeKind) 2657if (source.TypeKind != TypeKind.Class || target.TypeKind != TypeKind.Class) 2696switch (target.TypeKind)
Binder\Semantics\OverloadResolution\OverloadResolution.cs (3)
2514if (m1.Member.ContainingType.TypeKind == TypeKind.Submission && m2.Member.ContainingType.TypeKind == TypeKind.Submission) 2802if (t1.TypeKind == TypeKind.Pointer)
Binder\Semantics\OverloadResolution\OverloadResolutionResult.cs (2)
1222else if (argument.Kind == BoundKind.MethodGroup && parameterType.TypeKind == TypeKind.Delegate && 1227else if (argument.Kind == BoundKind.MethodGroup && parameterType.TypeKind == TypeKind.FunctionPointer)
BoundTree\BoundDagTest.cs (1)
83var typeName = b.Type.TypeKind == TypeKind.Error ? "<error type>" : b.Type.ToString();
CodeGen\EmitAddress.cs (3)
420Debug.Assert(arrayAccess.Type.TypeKind == TypeKind.TypeParameter, "constrained call should only be used with type parameter types"); 530Debug.Assert(receiverType.TypeKind == TypeKind.TypeParameter || receiverType.IsValueType); 537return receiverType.TypeKind == TypeKind.TypeParameter && addressKind != AddressKind.Constrained;
CodeGen\EmitConversion.cs (1)
331if (receiver is not BoundTypeExpression { Type: { TypeKind: TypeKind.TypeParameter } })
CodeGen\EmitExpression.cs (8)
443(receiverType.IsReferenceType && receiverType.TypeKind == TypeKind.TypeParameter) || 809Debug.Assert(thisType.TypeKind != TypeKind.TypeParameter); 1086if (elementType.TypeKind == TypeKind.TypeParameter) 1668if (receiver is not BoundTypeExpression { Type: { TypeKind: TypeKind.TypeParameter } }) 2654if (left.Kind == BoundKind.ArrayAccess && left.Type.TypeKind == TypeKind.TypeParameter && !left.Type.IsValueType) 3480if (((object)type != null) && (type.TypeKind == TypeKind.TypeParameter) && constantValue.IsNull) 4126Debug.Assert(load.Type is { TypeKind: TypeKind.FunctionPointer }); 4132if (load.ConstrainedToTypeOpt is not { TypeKind: TypeKind.TypeParameter })
CodeGen\EmitStackAllocInitializer.cs (1)
27var elementType = (type.TypeKind == TypeKind.Pointer
CodeGen\EmitStatement.cs (1)
180if (exprType?.TypeKind == TypeKind.TypeParameter)
CodeGen\Optimizer.cs (2)
1172if ((method.IsAbstract || method.IsVirtual) && receiver is BoundTypeExpression { Type: { TypeKind: TypeKind.TypeParameter } } typeExpression) 2263if (receiverOpt is BoundTypeExpression { AliasOpt: null, BoundContainingTypeOpt: null, BoundDimensionsOpt: { IsEmpty: true }, Type: { TypeKind: TypeKind.TypeParameter } } typeExpression)
Compilation\CSharpCompilation.cs (8)
1951if (mainType is null || mainType.IsGenericType || (mainType.TypeKind != TypeKind.Class && mainType.TypeKind != TypeKind.Struct && !mainType.IsInterface)) 4278if (csharpReturnType.TypeKind is TypeKind.Dynamic || 4279csharpLeftType.TypeKind is TypeKind.Dynamic || 4280csharpRightType.TypeKind is TypeKind.Dynamic) 4322if (csharpLeftType.TypeKind is TypeKind.Delegate && 4504if (csharpReturnType.TypeKind is TypeKind.Dynamic || 4505csharpOperandType.TypeKind is TypeKind.Dynamic)
Compilation\CSharpSemanticModel.cs (3)
546if (varTypeInfo.Type is { TypeKind: not TypeKind.Error }) 976if (varTypeInfo.Type is { TypeKind: not TypeKind.Error }) 2250else if (boundExpr is BoundConversion { ConversionKind: ConversionKind.MethodGroup, Conversion: var exprConversion, Type: { TypeKind: TypeKind.FunctionPointer }, SymbolOpt: var symbol })
Compiler\ClsComplianceChecker.cs (8)
254if (symbol.TypeKind == TypeKind.Delegate) 474if (type.TypeKind == TypeKind.Delegate) 738System.Diagnostics.Debug.Assert(method.ContainingType.TypeKind == TypeKind.Delegate); 983switch (type.TypeKind) 1008throw ExceptionUtilities.UnexpectedValue(type.TypeKind); 1032if (type.TypeKind == TypeKind.Error) 1372TypeKind typeKind = xType.TypeKind; 1373if (yType.TypeKind != typeKind)
Compiler\MethodCompiler.cs (1)
630containingType is { IsImplicitlyDeclared: false, TypeKind: TypeKind.Class or TypeKind.Struct or TypeKind.Interface } &&
Emitter\Model\MethodSymbolAdapter.cs (1)
615return this.IsExtern || (object)ContainingType != null && ContainingType.TypeKind == TypeKind.Delegate;
Emitter\Model\NamedTypeSymbolAdapter.cs (2)
44get { return AdaptedNamedTypeSymbol.TypeKind == TypeKind.Enum; } 518switch (AdaptedNamedTypeSymbol.TypeKind)
Emitter\NoPia\EmbeddedTypesManager.cs (7)
267switch (namedType.TypeKind) 401Debug.Assert(namedType.TypeKind == TypeKind.Struct || namedType.TypeKind == TypeKind.Enum || namedType.TypeKind == TypeKind.Delegate); 404if (namedType.TypeKind == TypeKind.Struct || namedType.TypeKind == TypeKind.Enum) 454var containerKind = field.AdaptedFieldSymbol.ContainingType.TypeKind;
FlowAnalysis\AbstractFlowPass.cs (1)
2243fieldSymbol.ContainingType.TypeKind == TypeKind.Struct &&
FlowAnalysis\DefiniteAssignment.cs (5)
102&& CurrentSymbol is MethodSymbol { MethodKind: MethodKind.Constructor, ContainingType.TypeKind: TypeKind.Struct }; 1146(_trackClassFields || type.TypeKind == TypeKind.Struct); 1273Debug.Assert(CurrentSymbol is MethodSymbol { MethodKind: MethodKind.Constructor, ContainingType.TypeKind: TypeKind.Struct }); 1326if (CurrentSymbol is not MethodSymbol { MethodKind: MethodKind.Constructor, ContainingType.TypeKind: TypeKind.Struct }) 2659switch (type.TypeKind)
FlowAnalysis\EmptyStructTypeCache.cs (1)
232switch (type.TypeKind)
FlowAnalysis\NullableWalker.cs (7)
2439return valueType.Type?.TypeKind == TypeKind.TypeParameter && 4571if (type.TypeKind != TypeKind.Struct) 4724_ => throw ExceptionUtilities.UnexpectedValue(type.TypeKind) 4801_ => throw ExceptionUtilities.UnexpectedValue(type.TypeKind) 5666{ TypeKind: TypeKind.Interface } => type.AllInterfacesNoUseSiteDiagnostics, 9028NamedTypeSymbol { TypeKind: TypeKind.Delegate, DelegateInvokeMethod: { Parameters: { } parameters } signature } => (signature, parameters), 9779case BoundExpression arg when arg.Type is { TypeKind: TypeKind.Delegate }:
Lowering\AsyncRewriter\AsyncMethodToStateMachineRewriter.cs (2)
557LocalSymbol thisTemp = (F.CurrentType.TypeKind == TypeKind.Class) ? F.SynthesizedLocal(F.CurrentType) : null; 618LocalSymbol thisTemp = (F.CurrentType.TypeKind == TypeKind.Class) ? F.SynthesizedLocal(F.CurrentType) : null;
Lowering\AsyncRewriter\AsyncRewriter.cs (3)
172if (F.CurrentType.TypeKind == TypeKind.Class) 195if (stateMachineType.TypeKind == TypeKind.Class) 204if (frameType.TypeKind == TypeKind.Class)
Lowering\ClosureConversion\ExpressionLambdaRewriter.cs (2)
603if (e.StrippedType().TypeKind == TypeKind.Enum) 799if ((object)d != null && d.TypeKind == TypeKind.Delegate)
Lowering\Instrumentation\LocalStateTracingInstrumenter.cs (1)
241_ when variableType.TypeKind is TypeKind.Struct
Lowering\LocalRewriter\LocalRewriter.cs (1)
843Debug.Assert(node.Expression.Type is { TypeKind: TypeKind.Array });
Lowering\LocalRewriter\LocalRewriter_BinaryOperator.cs (4)
2266Debug.Assert(loweredLeft.Type is { TypeKind: TypeKind.Pointer }); 2271Debug.Assert(loweredRight.Type is { TypeKind: TypeKind.Pointer }); 2458Debug.Assert(loweredLeft.Type is { TypeKind: TypeKind.Pointer }); 2459Debug.Assert(loweredRight.Type is { TypeKind: TypeKind.Pointer });
Lowering\LocalRewriter\LocalRewriter_Conversion.cs (1)
548case ConversionKind.MethodGroup when oldNodeOpt is { Type: { TypeKind: TypeKind.FunctionPointer } funcPtrType }:
Lowering\LocalRewriter\LocalRewriter_FixedStatement.cs (2)
213else if (fixedCollectionInitializer.Expression.Type is { TypeKind: TypeKind.Array }) 241Debug.Assert(initializerExpr.Type is { TypeKind: TypeKind.Pointer });
Lowering\LocalRewriter\LocalRewriter_ForEachStatement.cs (4)
877Debug.Assert(collectionExpression.Type is { TypeKind: TypeKind.Array }); 905Debug.Assert(collectionExpression.Type is { TypeKind: TypeKind.Array }); 1026Debug.Assert(collectionExpression.Type is { TypeKind: TypeKind.Array }); 1054Debug.Assert(collectionExpression.Type is { TypeKind: TypeKind.Array });
Lowering\LocalRewriter\LocalRewriter_PropertyAccess.cs (1)
37if (rewrittenReceiverOpt is { Type: { TypeKind: TypeKind.Array } } && !isLeftOfAssignment)
Lowering\LocalRewriter\LocalRewriter_UnaryOperator.cs (1)
772Debug.Assert(binaryOperand.Type is { TypeKind: TypeKind.Pointer });
Lowering\StateMachineRewriter\IteratorAndAsyncCaptureWalker.cs (1)
64if (!method.IsStatic && method.ContainingType.TypeKind == TypeKind.Struct)
Lowering\SyntheticBoundNodeFactory.cs (3)
1178Debug.Assert(array.Type is { TypeKind: TypeKind.Array }); 1184Debug.Assert(array.Type is { TypeKind: TypeKind.Array }); 1197Debug.Assert(array.Type is { TypeKind: TypeKind.Array });
Symbols\ArrayTypeSymbol.cs (1)
378while (current.TypeKind == TypeKind.Array)
Symbols\AssemblySymbol.cs (3)
501return GetSpecialType(SpecialType.System_Runtime_CompilerServices_RuntimeFeature) is { TypeKind: TypeKind.Class, IsStatic: true } && 524GetSpecialType(SpecialType.System_Runtime_CompilerServices_PreserveBaseOverridesAttribute) is { TypeKind: TypeKind.Class }; 1029if (result is null || result.TypeKind == TypeKind.Error)
Symbols\BaseTypeAnalysis.cs (1)
118if (fieldType is null || fieldType.TypeKind != TypeKind.Struct || field.IsStatic)
Symbols\Compilation_WellKnownMembers.cs (2)
221if (type.Kind != SymbolKind.NamedType || type.TypeKind != TypeKind.Class) 940switch (type.TypeKind)
Symbols\ConstantValueUtils.cs (1)
89if (typeSymbol.TypeKind == TypeKind.TypeParameter)
Symbols\ConstraintsHelper.cs (5)
242if (underlyingType.TypeKind == TypeKind.TypeParameter) 1454switch (typeArgument.TypeKind) 1479throw ExceptionUtilities.UnexpectedValue(typeArgument.TypeKind); 1488Debug.Assert(type.TypeKind is TypeKind.Class or TypeKind.Struct); 1536switch (type.TypeKind)
Symbols\DynamicTypeSymbol.cs (1)
204if (ReferenceEquals(this, t2) || t2.TypeKind == TypeKind.Dynamic)
Symbols\ExtendedErrorTypeSymbol.cs (6)
224if ((object?)oldSymbol == null || oldSymbol.TypeKind != TypeKind.Error) 252if (oldSymbol.TypeKind != TypeKind.Error) 254return oldSymbol.TypeKind; 273if ((object?)type != null && type.TypeKind != TypeKind.Error) 276commonTypeKind = type.TypeKind; 277else if (commonTypeKind != type.TypeKind)
Symbols\Extensions\SynthesizedExtensionMarker.cs (1)
96else if (parameterRefKind is RefKind.In or RefKind.RefReadOnlyParameter && parameterType.TypeKind != TypeKind.Struct)
Symbols\Metadata\PE\MetadataDecoder.cs (1)
395switch (candidate.TypeKind)
Symbols\Metadata\PE\NativeIntegerTypeDecoder.cs (2)
84switch (type.TypeKind) 102Debug.Assert(type.TypeKind == TypeKind.Error);
Symbols\Metadata\PE\PEMethodSymbol.cs (2)
1264if ((this.ContainingType.TypeKind == TypeKind.Class && this.IsRuntimeFinalizer(skipFirstMethodKindCheck: true)) || 1271if (_containingType.TypeKind == TypeKind.Delegate)
Symbols\Metadata\PE\PENamedTypeSymbol.cs (2)
122if (this.TypeKind is TypeKind.Enum or TypeKind.Extension) 2619var coClassType = ((object)type != null && (type.TypeKind == TypeKind.Class || type.IsErrorType())) ? (NamedTypeSymbol)type : null;
Symbols\Metadata\PE\TupleTypeDecoder.cs (1)
200throw ExceptionUtilities.UnexpectedValue(type.TypeKind);
Symbols\MissingMetadataTypeSymbol.cs (1)
376t2.TypeKind == TypeKind.Dynamic &&
Symbols\NamedTypeSymbol.cs (8)
179if (TypeKind != TypeKind.Delegate) 360(thisParam.RefKind is RefKind.In or RefKind.RefReadOnlyParameter && thisParam.Type.TypeKind != TypeKind.Struct)) 394var kind = TypeKind; 408var kind = TypeKind; 442return TypeKind == TypeKind.Submission; 461var name = (TypeKind == TypeKind.Submission) ? SynthesizedEntryPointSymbol.FactoryName : SynthesizedEntryPointSymbol.MainName; 805if (t2.TypeKind == TypeKind.Dynamic) 1631/// Requires less computation than <see cref="TypeSymbol.TypeKind"/> == <see cref="TypeKind.Interface"/>.
Symbols\PointerTypeSymbol.cs (1)
221while (current.TypeKind == TypeKind.Pointer)
Symbols\PublicModel\TypeSymbol.cs (1)
144return UnderlyingTypeSymbol.TypeKind;
Symbols\Source\ExplicitInterfaceHelpers.cs (1)
191switch (containingType.TypeKind)
Symbols\Source\SourceAssemblySymbol.cs (1)
2223Debug.Assert(forwardedType.TypeKind != TypeKind.Error);
Symbols\Source\SourceEventSymbol.cs (4)
623else if (IsAbstract && ContainingType.TypeKind == TypeKind.Struct) 628else if (IsVirtual && ContainingType.TypeKind == TypeKind.Struct) 669else if (IsAbstract && !ContainingType.IsAbstract && (ContainingType.TypeKind == TypeKind.Class || ContainingType.TypeKind == TypeKind.Submission))
Symbols\Source\SourceMemberFieldSymbol.cs (1)
573if (ContainingType.TypeKind != TypeKind.Struct)
Symbols\Source\SourceMethodSymbolWithAttributes.cs (1)
1475if (ContainingSymbol is NamedTypeSymbol { IsComImport: true, TypeKind: TypeKind.Class or TypeKind.Interface })
Symbols\Source\SourceNamedTypeSymbol.cs (2)
1240return builderType is NamedTypeSymbol { TypeKind: TypeKind.Class or TypeKind.Struct, IsGenericType: false }; 1347if ((object)coClassType != null && coClassType.TypeKind == TypeKind.Class)
Symbols\Source\SourceNamedTypeSymbol_Bases.cs (9)
312else if (baseType.TypeKind == TypeKind.Error && (object)partBase != null) 319else if ((object)partBase != null && !TypeSymbol.Equals(partBase, baseType, TypeCompareKind.ConsiderEverything) && partBase.TypeKind != TypeKind.Error) 508if (baseType.TypeKind == TypeKind.Error) 520if ((baseType.TypeKind == TypeKind.Class || 521baseType.TypeKind == TypeKind.Delegate || 522baseType.TypeKind == TypeKind.Struct || 548switch (baseType.TypeKind) 614throw ExceptionUtilities.UnexpectedValue(baseType.TypeKind); 633(TypeKind != TypeKind.Class || baseType.TypeKind == TypeKind.Interface || ((TypeDeclarationSyntax)decl.SyntaxReference.GetSyntax()).ParameterList is null))
Symbols\Source\SourceOrdinaryMethodSymbol.cs (5)
862else if (IsSealed && ContainingType.TypeKind == TypeKind.Struct) 884else if (IsAbstract && ContainingType.TypeKind == TypeKind.Struct) 889else if (IsVirtual && ContainingType.TypeKind == TypeKind.Struct) 899else if (IsAbstract && !ContainingType.IsAbstract && (ContainingType.TypeKind == TypeKind.Class || ContainingType.TypeKind == TypeKind.Submission))
Symbols\Source\SourcePropertyAccessorSymbol.cs (3)
529if (IsAbstract && !ContainingType.IsAbstract && (ContainingType.TypeKind == TypeKind.Class || ContainingType.TypeKind == TypeKind.Submission)) 534else if (IsVirtual && ContainingType.IsSealed && ContainingType.TypeKind != TypeKind.Struct) // error CS0106 on struct already
Symbols\Source\SourcePropertySymbolBase.cs (2)
1109else if (IsAbstract && ContainingType.TypeKind == TypeKind.Struct) 1114else if (IsVirtual && ContainingType.TypeKind == TypeKind.Struct)
Symbols\Source\ThisParameterSymbol.cs (1)
152if (ContainingType?.TypeKind != TypeKind.Struct)
Symbols\Symbol.cs (3)
257if (ContainingType?.TypeKind == TypeKind.Submission) 279if (ContainingType.TypeKind == TypeKind.Submission) 290Debug.Assert(ContainingType.TypeKind != TypeKind.Submission);
Symbols\Symbol_Attributes.cs (2)
68switch (namedType.TypeKind) 90throw ExceptionUtilities.UnexpectedValue(namedType.TypeKind);
Symbols\SymbolExtensions.cs (3)
84return superType.TypeKind == TypeKind.Submission && subType.TypeKind == TypeKind.Submission; 238if (type.TypeKind == TypeKind.TypeParameter)
Symbols\Synthesized\SynthesizedContainer.cs (3)
47internal sealed override bool IsInterface => this.TypeKind == TypeKind.Interface; 89public override bool IsAbstract => (object)Constructor == null && this.TypeKind != TypeKind.Struct; 160internal override NamedTypeSymbol BaseTypeNoUseSiteDiagnostics => ContainingAssembly.GetSpecialType(this.TypeKind == TypeKind.Struct ? SpecialType.System_ValueType : SpecialType.System_Object);
Symbols\Synthesized\SynthesizedInstanceConstructor.cs (2)
84Debug.Assert(_containingType.TypeKind == TypeKind.Class); 88if (_containingType.TypeKind == TypeKind.Delegate)
Symbols\Synthesized\SynthesizedSubmissionConstructor.cs (1)
19Debug.Assert(containingType.TypeKind == TypeKind.Submission);
Symbols\TypeParameterSymbol.cs (3)
393if (constraint.TypeKind == TypeKind.TypeParameter) 403Debug.Assert(constraint.TypeKind != TypeKind.TypeParameter); 411switch (constraint.TypeKind)
Symbols\TypeSymbol.cs (6)
108var interfaces = (baseType.TypeKind == TypeKind.TypeParameter) ? ((TypeParameterSymbol)baseType).EffectiveInterfacesNoUseSiteDiagnostics : baseType.InterfacesNoUseSiteDiagnostics(); 344var interfaces = (baseType.TypeKind == TypeKind.TypeParameter) ? ((TypeParameterSymbol)baseType).EffectiveInterfacesNoUseSiteDiagnostics : baseType.InterfacesNoUseSiteDiagnostics(); 507=> TypeKind switch 560=> TypeKind == TypeKind.Extension; 2505TypeKind ITypeSymbolInternal.TypeKind => this.TypeKind; 2531if (this.TypeKind == TypeKind.Struct)
Symbols\TypeSymbolExtensions.cs (31)
71if (type.TypeKind != TypeKind.TypeParameter) 117if (type.TypeKind == TypeKind.TypeParameter) 222return type.TypeKind == TypeKind.Enum; 315switch (type.TypeKind) 335return type.TypeKind == TypeKind.Class; 341return type.TypeKind == TypeKind.Struct; 357return type.TypeKind == TypeKind.Dynamic; 363return type.TypeKind == TypeKind.TypeParameter; 369return type.TypeKind == TypeKind.Array; 375return type.TypeKind == TypeKind.Array && ((ArrayTypeSymbol)type).IsSZArray; 400return type.TypeKind == TypeKind.FunctionPointer; 405switch (type.TypeKind) 418switch (type.TypeKind) 570return type.TypeKind == TypeKind.Delegate; 699switch (type.TypeKind) 774switch (current.TypeKind) 832switch (current.TypeKind) 942throw ExceptionUtilities.UnexpectedValue(current.TypeKind); 1165if (ReferenceEquals(parent2.OriginalDefinition, parent1OriginalDefinition) || parent1OriginalDefinition.TypeKind == TypeKind.Submission && parent2.TypeKind == TypeKind.Submission) 1205(type, parameter, unused) => type.TypeKind == TypeKind.TypeParameter && (parameter is null || TypeSymbol.Equals(type, parameter, TypeCompareKind.ConsiderEverything2)); 1216(type, parameterContainer, unused) => type.TypeKind == TypeKind.TypeParameter && (object)type.ContainingSymbol == (object)parameterContainer; 1225(type, parameters, unused) => type.TypeKind == TypeKind.TypeParameter && parameters.Contains((TypeParameterSymbol)type); 1234(type, _, _) => type.TypeKind == TypeKind.TypeParameter && type.ContainingSymbol is MethodSymbol; 1245private static readonly Func<TypeSymbol, object?, bool, bool> s_containsDynamicPredicate = (type, unused1, unused2) => type.TypeKind == TypeKind.Dynamic; 1283type.VisitType((TypeSymbol t, object? _, bool _) => t.TypeKind is TypeKind.Pointer or TypeKind.FunctionPointer, null) is object; 1508switch (type.TypeKind) 1530throw ExceptionUtilities.UnexpectedValue(type.TypeKind); 1670return type.IsReferenceType && type.TypeKind != TypeKind.TypeParameter; 1678return type.IsValueType && type.TypeKind != TypeKind.TypeParameter; 2003if (taskType.TypeKind == TypeKind.Error)
Symbols\TypeWithAnnotations.cs (3)
200if (typeSymbol.TypeKind != TypeKind.TypeParameter) 271public TypeKind TypeKind => Type.TypeKind; 650if (type.TypeKind != TypeKind.Array)
Symbols\VarianceSafety.cs (3)
73switch (member.TypeKind) 83throw ExceptionUtilities.UnexpectedValue(member.TypeKind); 368switch (namedType.TypeKind)
Symbols\Wrapped\WrappedNamedTypeSymbol.cs (1)
123return _underlyingType.TypeKind;
Utilities\TypeSymbolExtensions.cs (4)
181switch (type.TypeKind) 206throw ExceptionUtilities.UnexpectedValue(type.TypeKind); 276switch (type.TypeKind) 286throw ExceptionUtilities.UnexpectedValue(type.TypeKind);