Emitter\Model\PEAssemblyBuilder.cs (12)
347AttributeDescription.CodeAnalysisEmbeddedAttribute,
355AttributeDescription.IsReadOnlyAttribute,
364AttributeDescription.IsByRefLikeAttribute,
373AttributeDescription.IsUnmanagedAttribute,
382AttributeDescription.NullableAttribute,
391AttributeDescription.NullableContextAttribute,
400AttributeDescription.NullablePublicOnlyAttribute,
410AttributeDescription.NativeIntegerAttribute,
419AttributeDescription.ScopedRefAttribute,
428AttributeDescription.RefSafetyRulesAttribute,
490AttributeDescription description,
514private void AddDiagnosticsForExistingAttribute(AttributeDescription description, BindingDiagnosticBag diagnostics)
Symbols\Attributes\AttributeData.cs (39)
100internal bool IsTargetAttribute(Symbol targetSymbol, AttributeDescription description)
105internal abstract int GetTargetAttributeSignatureIndex(Symbol targetSymbol, AttributeDescription description);
112internal static bool IsTargetEarlyAttribute(NamedTypeSymbol attributeType, AttributeSyntax attributeSyntax, AttributeDescription description)
250if (this.IsTargetAttribute(targetSymbol, AttributeDescription.PermissionSetAttribute))
380if (this.IsTargetAttribute(targetSymbol, AttributeDescription.HostProtectionAttribute))
415if (this.IsTargetAttribute(targetSymbol, AttributeDescription.PrincipalPermissionAttribute))
708(IsTargetAttribute(target, AttributeDescription.AssemblyCultureAttribute) ||
709IsTargetAttribute(target, AttributeDescription.AssemblyVersionAttribute) ||
710IsTargetAttribute(target, AttributeDescription.AssemblyFlagsAttribute) ||
711IsTargetAttribute(target, AttributeDescription.AssemblyAlgorithmIdAttribute))) ||
712IsTargetAttribute(target, AttributeDescription.TypeForwardedToAttribute) ||
721if (IsTargetAttribute(target, AttributeDescription.SpecialNameAttribute))
729if (IsTargetAttribute(target, AttributeDescription.SpecialNameAttribute) ||
730IsTargetAttribute(target, AttributeDescription.NonSerializedAttribute) ||
731IsTargetAttribute(target, AttributeDescription.FieldOffsetAttribute) ||
732IsTargetAttribute(target, AttributeDescription.MarshalAsAttribute))
742if (IsTargetAttribute(target, AttributeDescription.MarshalAsAttribute))
749if (IsTargetAttribute(target, AttributeDescription.SpecialNameAttribute) ||
750IsTargetAttribute(target, AttributeDescription.MethodImplAttribute) ||
751IsTargetAttribute(target, AttributeDescription.DllImportAttribute) ||
752IsTargetAttribute(target, AttributeDescription.PreserveSigAttribute) ||
753IsTargetAttribute(target, AttributeDescription.DynamicSecurityMethodAttribute) ||
767if (IsTargetAttribute(target, AttributeDescription.SpecialNameAttribute) ||
768IsTargetAttribute(target, AttributeDescription.ComImportAttribute) ||
769IsTargetAttribute(target, AttributeDescription.SerializableAttribute) ||
770IsTargetAttribute(target, AttributeDescription.StructLayoutAttribute) ||
771IsTargetAttribute(target, AttributeDescription.WindowsRuntimeImportAttribute) ||
780if (IsTargetAttribute(target, AttributeDescription.OptionalAttribute) ||
781IsTargetAttribute(target, AttributeDescription.DefaultParameterValueAttribute) ||
782IsTargetAttribute(target, AttributeDescription.InAttribute) ||
783IsTargetAttribute(target, AttributeDescription.OutAttribute) ||
784IsTargetAttribute(target, AttributeDescription.MarshalAsAttribute))
792if (IsTargetAttribute(target, AttributeDescription.IndexerNameAttribute) ||
793IsTargetAttribute(target, AttributeDescription.SpecialNameAttribute) ||
794IsTargetAttribute(target, AttributeDescription.DisallowNullAttribute) ||
795IsTargetAttribute(target, AttributeDescription.AllowNullAttribute) ||
796IsTargetAttribute(target, AttributeDescription.MaybeNullAttribute) ||
797IsTargetAttribute(target, AttributeDescription.NotNullAttribute))
812internal static int IndexOfAttribute(this ImmutableArray<CSharpAttributeData> attributes, Symbol targetSymbol, AttributeDescription description)
Symbols\Metadata\PE\PEModuleSymbol.cs (16)
309AttributeDescription filterOut1)
316AttributeDescription filterOut1,
318AttributeDescription filterOut2)
329AttributeDescription filterOut1,
331AttributeDescription filterOut2,
333AttributeDescription filterOut3,
335AttributeDescription filterOut4,
337AttributeDescription filterOut5,
339AttributeDescription filterOut6)
410bool matchesFilter(CustomAttributeHandle handle, AttributeDescription filter)
429return GetCustomAttributesForToken(token, out paramArrayAttribute, AttributeDescription.ParamArrayAttribute);
447internal TypeSymbol TryDecodeAttributeWithTypeArgument(EntityHandle handle, AttributeDescription attributeDescription)
469filterOut1: AttributeDescription.CaseSensitiveExtensionAttribute,
471filterOut2: AttributeDescription.IsReadOnlyAttribute);
662return assemblyAttributes.IndexOfAttribute(this, AttributeDescription.CompilationRelaxationsAttribute) >= 0;
671return assemblyAttributes.IndexOfAttribute(this, AttributeDescription.RuntimeCompatibilityAttribute) >= 0;
Symbols\Metadata\PE\PEParameterSymbol.cs (20)
595AttributeDescription.IDispatchConstantAttribute));
611AttributeDescription.IUnknownConstantAttribute));
627AttributeDescription.CallerLineNumberAttribute));
643AttributeDescription.CallerFilePathAttribute));
659AttributeDescription.CallerMemberNameAttribute));
734var info = _moduleSymbol.Module.FindTargetAttribute(_handle, AttributeDescription.CallerArgumentExpressionAttribute);
778if (module.HasAttribute(handle, AttributeDescription.AllowNullAttribute)) annotations |= FlowAnalysisAnnotations.AllowNull;
779if (module.HasAttribute(handle, AttributeDescription.DisallowNullAttribute)) annotations |= FlowAnalysisAnnotations.DisallowNull;
781if (module.HasAttribute(handle, AttributeDescription.MaybeNullAttribute))
785else if (module.HasMaybeNullWhenOrNotNullWhenOrDoesNotReturnIfAttribute(handle, AttributeDescription.MaybeNullWhenAttribute, out bool when))
790if (module.HasAttribute(handle, AttributeDescription.NotNullAttribute))
794else if (module.HasMaybeNullWhenOrNotNullWhenOrDoesNotReturnIfAttribute(handle, AttributeDescription.NotNullWhenAttribute, out bool when))
799if (module.HasMaybeNullWhenOrNotNullWhenOrDoesNotReturnIfAttribute(handle, AttributeDescription.DoesNotReturnIfAttribute, out bool condition))
1024AttributeDescription filterOutConstantAttributeDescription = default(AttributeDescription);
1030filterOutConstantAttributeDescription = AttributeDescription.DateTimeConstantAttribute;
1034filterOutConstantAttributeDescription = AttributeDescription.DecimalConstantAttribute;
1047filterOutParamArrayAttribute ? AttributeDescription.ParamArrayAttribute : default,
1051filterIsReadOnlyAttribute ? AttributeDescription.IsReadOnlyAttribute : default,
1053AttributeDescription.ScopedRefAttribute,
Symbols\Source\FieldSymbolWithAttributesAndModifiers.cs (11)
171if (attribute.IsTargetAttribute(this, AttributeDescription.SpecialNameAttribute))
175else if (attribute.IsTargetAttribute(this, AttributeDescription.NonSerializedAttribute))
179else if (attribute.IsTargetAttribute(this, AttributeDescription.FieldOffsetAttribute))
202else if (attribute.IsTargetAttribute(this, AttributeDescription.MarshalAsAttribute))
217else if (attribute.IsTargetAttribute(this, AttributeDescription.DateTimeConstantAttribute))
221else if (attribute.IsTargetAttribute(this, AttributeDescription.DecimalConstantAttribute))
225else if (attribute.IsTargetAttribute(this, AttributeDescription.AllowNullAttribute))
229else if (attribute.IsTargetAttribute(this, AttributeDescription.DisallowNullAttribute))
233else if (attribute.IsTargetAttribute(this, AttributeDescription.MaybeNullAttribute))
237else if (attribute.IsTargetAttribute(this, AttributeDescription.NotNullAttribute))
331int i = boundAttributes.IndexOfAttribute(this, AttributeDescription.FieldOffsetAttribute);
Symbols\Source\SourceAssemblySymbol.cs (57)
770diagnostics.Add(ErrorCode.WRN_CmdOptionConflictsSource, NoLocation.Singleton, "DelaySign", AttributeDescription.AssemblyDelaySignAttribute.FullName);
777AttributeDescription.AssemblyDelaySignAttribute.FullName);
811diagnostics.Add(ErrorCode.ERR_CmdOptionConflictsSource, NoLocation.Singleton, AttributeDescription.AssemblyKeyNameAttribute.FullName, "CryptoKeyContainer");
815diagnostics.Add(ErrorCode.WRN_CmdOptionConflictsSource, NoLocation.Singleton, "CryptoKeyContainer", AttributeDescription.AssemblyKeyNameAttribute.FullName);
824diagnostics.Add(ErrorCode.WRN_AttributeIgnoredWhenPublicSigning, NoLocation.Singleton, AttributeDescription.AssemblyKeyNameAttribute.FullName);
848diagnostics.Add(ErrorCode.ERR_CmdOptionConflictsSource, NoLocation.Singleton, AttributeDescription.AssemblyKeyFileAttribute.FullName, "CryptoKeyFile");
852diagnostics.Add(ErrorCode.WRN_CmdOptionConflictsSource, NoLocation.Singleton, "CryptoKeyFile", AttributeDescription.AssemblyKeyFileAttribute.FullName);
861diagnostics.Add(ErrorCode.WRN_AttributeIgnoredWhenPublicSigning, NoLocation.Singleton, AttributeDescription.AssemblyKeyFileAttribute.FullName);
1143if (attribute.IsTargetAttribute(this, AttributeDescription.AssemblyTitleAttribute) ||
1144attribute.IsTargetAttribute(this, AttributeDescription.AssemblyDescriptionAttribute) ||
1145attribute.IsTargetAttribute(this, AttributeDescription.AssemblyConfigurationAttribute) ||
1146attribute.IsTargetAttribute(this, AttributeDescription.AssemblyCultureAttribute) ||
1147attribute.IsTargetAttribute(this, AttributeDescription.AssemblyVersionAttribute) ||
1148attribute.IsTargetAttribute(this, AttributeDescription.AssemblyCompanyAttribute) ||
1149attribute.IsTargetAttribute(this, AttributeDescription.AssemblyProductAttribute) ||
1150attribute.IsTargetAttribute(this, AttributeDescription.AssemblyInformationalVersionAttribute) ||
1151attribute.IsTargetAttribute(this, AttributeDescription.AssemblyCopyrightAttribute) ||
1152attribute.IsTargetAttribute(this, AttributeDescription.AssemblyTrademarkAttribute) ||
1153attribute.IsTargetAttribute(this, AttributeDescription.AssemblyKeyFileAttribute) ||
1154attribute.IsTargetAttribute(this, AttributeDescription.AssemblyKeyNameAttribute) ||
1155attribute.IsTargetAttribute(this, AttributeDescription.AssemblyAlgorithmIdAttribute) ||
1156attribute.IsTargetAttribute(this, AttributeDescription.AssemblyFlagsAttribute) ||
1157attribute.IsTargetAttribute(this, AttributeDescription.AssemblyDelaySignAttribute) ||
1158attribute.IsTargetAttribute(this, AttributeDescription.AssemblyFileVersionAttribute) ||
1159attribute.IsTargetAttribute(this, AttributeDescription.SatelliteContractVersionAttribute) ||
1160attribute.IsTargetAttribute(this, AttributeDescription.AssemblySignatureKeyAttribute))
1505attribute.IsTargetAttribute(this, AttributeDescription.AssemblySignatureKeyAttribute))
1511attribute.IsTargetAttribute(this, AttributeDescription.AssemblyKeyFileAttribute))
1517attribute.IsTargetAttribute(this, AttributeDescription.AssemblyKeyNameAttribute))
2345if (attribute.IsTargetAttribute(this, AttributeDescription.InternalsVisibleToAttribute))
2349else if (attribute.IsTargetAttribute(this, AttributeDescription.AssemblySignatureKeyAttribute))
2359else if (attribute.IsTargetAttribute(this, AttributeDescription.AssemblyKeyFileAttribute))
2363else if (attribute.IsTargetAttribute(this, AttributeDescription.AssemblyKeyNameAttribute))
2367else if (attribute.IsTargetAttribute(this, AttributeDescription.AssemblyDelaySignAttribute))
2371else if (attribute.IsTargetAttribute(this, AttributeDescription.AssemblyVersionAttribute))
2384else if (attribute.IsTargetAttribute(this, AttributeDescription.AssemblyFileVersionAttribute))
2396else if (attribute.IsTargetAttribute(this, AttributeDescription.AssemblyTitleAttribute))
2400else if (attribute.IsTargetAttribute(this, AttributeDescription.AssemblyDescriptionAttribute))
2404else if (attribute.IsTargetAttribute(this, AttributeDescription.AssemblyCultureAttribute))
2422else if (attribute.IsTargetAttribute(this, AttributeDescription.AssemblyCompanyAttribute))
2426else if (attribute.IsTargetAttribute(this, AttributeDescription.AssemblyProductAttribute))
2430else if (attribute.IsTargetAttribute(this, AttributeDescription.AssemblyInformationalVersionAttribute))
2434else if (attribute.IsTargetAttribute(this, AttributeDescription.SatelliteContractVersionAttribute))
2446else if (attribute.IsTargetAttribute(this, AttributeDescription.AssemblyCopyrightAttribute))
2450else if (attribute.IsTargetAttribute(this, AttributeDescription.AssemblyTrademarkAttribute))
2454else if ((signature = attribute.GetTargetAttributeSignatureIndex(this, AttributeDescription.AssemblyFlagsAttribute)) != -1)
2474else if (attribute.IsTargetAttribute(this, AttributeDescription.ClassInterfaceAttribute))
2478else if (attribute.IsTargetAttribute(this, AttributeDescription.TypeLibVersionAttribute))
2482else if (attribute.IsTargetAttribute(this, AttributeDescription.ComCompatibleVersionAttribute))
2486else if (attribute.IsTargetAttribute(this, AttributeDescription.GuidAttribute))
2490else if (attribute.IsTargetAttribute(this, AttributeDescription.CompilationRelaxationsAttribute))
2494else if (attribute.IsTargetAttribute(this, AttributeDescription.ReferenceAssemblyAttribute))
2498else if (attribute.IsTargetAttribute(this, AttributeDescription.RuntimeCompatibilityAttribute))
2514else if (attribute.IsTargetAttribute(this, AttributeDescription.DebuggableAttribute))
2518else if (!isFromNetModule && attribute.IsTargetAttribute(this, AttributeDescription.TypeForwardedToAttribute))
2522else if (attribute.IsTargetAttribute(this, AttributeDescription.CaseSensitiveExtensionAttribute))
2530else if ((signature = attribute.GetTargetAttributeSignatureIndex(this, AttributeDescription.AssemblyAlgorithmIdAttribute)) != -1)
Symbols\Source\SourceComplexParameterSymbol.cs (51)
616if (CSharpAttributeData.IsTargetEarlyAttribute(attributeType, attributeSyntax, AttributeDescription.OptionalAttribute))
635if (CSharpAttributeData.IsTargetEarlyAttribute(arguments.AttributeType, arguments.AttributeSyntax, AttributeDescription.DefaultParameterValueAttribute))
637return EarlyDecodeAttributeForDefaultParameterValue(AttributeDescription.DefaultParameterValueAttribute, ref arguments);
639else if (CSharpAttributeData.IsTargetEarlyAttribute(arguments.AttributeType, arguments.AttributeSyntax, AttributeDescription.DecimalConstantAttribute))
641return EarlyDecodeAttributeForDefaultParameterValue(AttributeDescription.DecimalConstantAttribute, ref arguments);
643else if (CSharpAttributeData.IsTargetEarlyAttribute(arguments.AttributeType, arguments.AttributeSyntax, AttributeDescription.DateTimeConstantAttribute))
645return EarlyDecodeAttributeForDefaultParameterValue(AttributeDescription.DateTimeConstantAttribute, ref arguments);
647else if (CSharpAttributeData.IsTargetEarlyAttribute(arguments.AttributeType, arguments.AttributeSyntax, AttributeDescription.UnscopedRefAttribute))
656if (CSharpAttributeData.IsTargetEarlyAttribute(arguments.AttributeType, arguments.AttributeSyntax, AttributeDescription.CallerLineNumberAttribute))
660else if (CSharpAttributeData.IsTargetEarlyAttribute(arguments.AttributeType, arguments.AttributeSyntax, AttributeDescription.CallerFilePathAttribute))
664else if (CSharpAttributeData.IsTargetEarlyAttribute(arguments.AttributeType, arguments.AttributeSyntax, AttributeDescription.CallerMemberNameAttribute))
668else if (CSharpAttributeData.IsTargetEarlyAttribute(arguments.AttributeType, arguments.AttributeSyntax, AttributeDescription.CallerArgumentExpressionAttribute))
697private (CSharpAttributeData?, BoundAttribute?) EarlyDecodeAttributeForDefaultParameterValue(AttributeDescription description, ref EarlyDecodeWellKnownAttributeArguments<EarlyWellKnownAttributeBinder, NamedTypeSymbol, AttributeSyntax, AttributeLocation> arguments)
699Debug.Assert(description.Equals(AttributeDescription.DefaultParameterValueAttribute) ||
700description.Equals(AttributeDescription.DecimalConstantAttribute) ||
701description.Equals(AttributeDescription.DateTimeConstantAttribute));
733Debug.Assert(AttributeDescription.InterpolatedStringHandlerArgumentAttribute.Signatures.Length == 2);
736if (attribute.IsTargetAttribute(this, AttributeDescription.DefaultParameterValueAttribute))
739DecodeDefaultParameterValueAttribute(AttributeDescription.DefaultParameterValueAttribute, ref arguments);
741else if (attribute.IsTargetAttribute(this, AttributeDescription.DecimalConstantAttribute))
744DecodeDefaultParameterValueAttribute(AttributeDescription.DecimalConstantAttribute, ref arguments);
746else if (attribute.IsTargetAttribute(this, AttributeDescription.DateTimeConstantAttribute))
749DecodeDefaultParameterValueAttribute(AttributeDescription.DateTimeConstantAttribute, ref arguments);
751else if (attribute.IsTargetAttribute(this, AttributeDescription.OptionalAttribute))
761else if (attribute.IsTargetAttribute(this, AttributeDescription.ParamArrayAttribute))
766else if (attribute.IsTargetAttribute(this, AttributeDescription.InAttribute))
770else if (attribute.IsTargetAttribute(this, AttributeDescription.OutAttribute))
774else if (attribute.IsTargetAttribute(this, AttributeDescription.MarshalAsAttribute))
778else if (attribute.IsTargetAttribute(this, AttributeDescription.IDispatchConstantAttribute))
782else if (attribute.IsTargetAttribute(this, AttributeDescription.IUnknownConstantAttribute))
786else if (attribute.IsTargetAttribute(this, AttributeDescription.CallerLineNumberAttribute))
790else if (attribute.IsTargetAttribute(this, AttributeDescription.CallerFilePathAttribute))
794else if (attribute.IsTargetAttribute(this, AttributeDescription.CallerMemberNameAttribute))
798else if (attribute.IsTargetAttribute(this, AttributeDescription.CallerArgumentExpressionAttribute))
813else if (attribute.IsTargetAttribute(this, AttributeDescription.AllowNullAttribute))
817else if (attribute.IsTargetAttribute(this, AttributeDescription.DisallowNullAttribute))
821else if (attribute.IsTargetAttribute(this, AttributeDescription.MaybeNullAttribute))
825else if (attribute.IsTargetAttribute(this, AttributeDescription.MaybeNullWhenAttribute))
829else if (attribute.IsTargetAttribute(this, AttributeDescription.NotNullAttribute))
833else if (attribute.IsTargetAttribute(this, AttributeDescription.NotNullWhenAttribute))
837else if (attribute.IsTargetAttribute(this, AttributeDescription.DoesNotReturnIfAttribute))
841else if (attribute.IsTargetAttribute(this, AttributeDescription.NotNullIfNotNullAttribute))
845else if (attribute.IsTargetAttribute(this, AttributeDescription.EnumeratorCancellationAttribute))
850else if (attribute.GetTargetAttributeSignatureIndex(this, AttributeDescription.InterpolatedStringHandlerArgumentAttribute) is (0 or 1) and var index)
854else if (attribute.IsTargetAttribute(this, AttributeDescription.UnscopedRefAttribute))
880private void DecodeDefaultParameterValueAttribute(AttributeDescription description, ref DecodeWellKnownAttributeArguments<AttributeSyntax, CSharpAttributeData, AttributeLocation> arguments)
916private ConstantValue DecodeDefaultParameterValueAttribute(AttributeDescription description, CSharpAttributeData attribute, AttributeSyntax node, bool diagnose, BindingDiagnosticBag diagnosticsOpt)
920if (description.Equals(AttributeDescription.DefaultParameterValueAttribute))
924else if (description.Equals(AttributeDescription.DecimalConstantAttribute))
930Debug.Assert(description.Equals(AttributeDescription.DateTimeConstantAttribute));
1233Debug.Assert(arguments.Attribute.IsTargetAttribute(this, AttributeDescription.InterpolatedStringHandlerArgumentAttribute) && arguments.Attribute.CommonConstructorArguments.Length == 1);
Symbols\Source\SourceMethodSymbolWithAttributes.cs (26)
331if (CSharpAttributeData.IsTargetEarlyAttribute(arguments.AttributeType, arguments.AttributeSyntax, AttributeDescription.ConditionalAttribute))
355else if (CSharpAttributeData.IsTargetEarlyAttribute(arguments.AttributeType, arguments.AttributeSyntax, AttributeDescription.UnmanagedCallersOnlyAttribute))
502if (attribute.IsTargetAttribute(this, AttributeDescription.PreserveSigAttribute))
506else if (attribute.IsTargetAttribute(this, AttributeDescription.MethodImplAttribute))
510else if (attribute.IsTargetAttribute(this, AttributeDescription.DllImportAttribute))
514else if (attribute.IsTargetAttribute(this, AttributeDescription.SpecialNameAttribute))
518else if (attribute.IsTargetAttribute(this, AttributeDescription.ExcludeFromCodeCoverageAttribute))
522else if (attribute.IsTargetAttribute(this, AttributeDescription.ConditionalAttribute))
526else if (attribute.IsTargetAttribute(this, AttributeDescription.SuppressUnmanagedCodeSecurityAttribute))
530else if (attribute.IsTargetAttribute(this, AttributeDescription.DynamicSecurityMethodAttribute))
534else if (VerifyObsoleteAttributeAppliedToMethod(ref arguments, AttributeDescription.ObsoleteAttribute))
537else if (VerifyObsoleteAttributeAppliedToMethod(ref arguments, AttributeDescription.DeprecatedAttribute))
548else if (attribute.IsTargetAttribute(this, AttributeDescription.SecurityCriticalAttribute)
549|| attribute.IsTargetAttribute(this, AttributeDescription.SecuritySafeCriticalAttribute))
556else if (attribute.IsTargetAttribute(this, AttributeDescription.SkipLocalsInitAttribute))
560else if (attribute.IsTargetAttribute(this, AttributeDescription.DoesNotReturnAttribute))
564else if (attribute.IsTargetAttribute(this, AttributeDescription.MemberNotNullAttribute))
569else if (attribute.IsTargetAttribute(this, AttributeDescription.MemberNotNullWhenAttribute))
574else if (attribute.IsTargetAttribute(this, AttributeDescription.ModuleInitializerAttribute))
579else if (attribute.IsTargetAttribute(this, AttributeDescription.UnmanagedCallersOnlyAttribute))
583else if (attribute.IsTargetAttribute(this, AttributeDescription.UnscopedRefAttribute))
628AttributeDescription description)
727if (attribute.IsTargetAttribute(this, AttributeDescription.MarshalAsAttribute))
742else if (attribute.IsTargetAttribute(this, AttributeDescription.MaybeNullAttribute))
746else if (attribute.IsTargetAttribute(this, AttributeDescription.NotNullAttribute))
750else if (attribute.IsTargetAttribute(this, AttributeDescription.NotNullIfNotNullAttribute))
Symbols\Source\SourceNamedTypeSymbol.cs (26)
906if (CSharpAttributeData.IsTargetEarlyAttribute(arguments.AttributeType, arguments.AttributeSyntax, AttributeDescription.ComImportAttribute))
921if (CSharpAttributeData.IsTargetEarlyAttribute(arguments.AttributeType, arguments.AttributeSyntax, AttributeDescription.CodeAnalysisEmbeddedAttribute))
936if (CSharpAttributeData.IsTargetEarlyAttribute(arguments.AttributeType, arguments.AttributeSyntax, AttributeDescription.ConditionalAttribute))
963if (CSharpAttributeData.IsTargetEarlyAttribute(arguments.AttributeType, arguments.AttributeSyntax, AttributeDescription.AttributeUsageAttribute))
995if (CSharpAttributeData.IsTargetEarlyAttribute(arguments.AttributeType, arguments.AttributeSyntax, AttributeDescription.InterpolatedStringHandlerAttribute))
1063if (attribute.IsTargetAttribute(this, AttributeDescription.AttributeUsageAttribute))
1067else if (attribute.IsTargetAttribute(this, AttributeDescription.DefaultMemberAttribute))
1071else if (attribute.IsTargetAttribute(this, AttributeDescription.CoClassAttribute))
1075else if (attribute.IsTargetAttribute(this, AttributeDescription.ConditionalAttribute))
1079else if (attribute.IsTargetAttribute(this, AttributeDescription.GuidAttribute))
1083else if (attribute.IsTargetAttribute(this, AttributeDescription.SpecialNameAttribute))
1087else if (attribute.IsTargetAttribute(this, AttributeDescription.SerializableAttribute))
1091else if (attribute.IsTargetAttribute(this, AttributeDescription.ExcludeFromCodeCoverageAttribute))
1095else if (attribute.IsTargetAttribute(this, AttributeDescription.StructLayoutAttribute))
1100else if (attribute.IsTargetAttribute(this, AttributeDescription.SuppressUnmanagedCodeSecurityAttribute))
1104else if (attribute.IsTargetAttribute(this, AttributeDescription.ClassInterfaceAttribute))
1108else if (attribute.IsTargetAttribute(this, AttributeDescription.InterfaceTypeAttribute))
1112else if (attribute.IsTargetAttribute(this, AttributeDescription.WindowsRuntimeImportAttribute))
1116else if (attribute.IsTargetAttribute(this, AttributeDescription.RequiredAttributeAttribute))
1134else if (attribute.IsTargetAttribute(this, AttributeDescription.SecurityCriticalAttribute)
1135|| attribute.IsTargetAttribute(this, AttributeDescription.SecuritySafeCriticalAttribute))
1139else if (attribute.IsTargetAttribute(this, AttributeDescription.SkipLocalsInitAttribute))
1143else if (_lazyIsExplicitDefinitionOfNoPiaLocalType == ThreeState.Unknown && attribute.IsTargetAttribute(this, AttributeDescription.TypeIdentifierAttribute))
1481int index = boundAttributes.IndexOfAttribute(this, AttributeDescription.ComImportAttribute);
1529int index = boundAttributes.IndexOfAttribute(this, AttributeDescription.CoClassAttribute);
1538int index = boundAttributes.IndexOfAttribute(this, AttributeDescription.DefaultMemberAttribute);
Symbols\Source\SourcePropertySymbolBase.cs (21)
1188if (CSharpAttributeData.IsTargetEarlyAttribute(arguments.AttributeType, arguments.AttributeSyntax, AttributeDescription.IndexerNameAttribute))
1247if (attribute.IsTargetAttribute(this, AttributeDescription.IndexerNameAttribute))
1252else if (attribute.IsTargetAttribute(this, AttributeDescription.SpecialNameAttribute))
1256else if (attribute.IsTargetAttribute(this, AttributeDescription.ExcludeFromCodeCoverageAttribute))
1260else if (attribute.IsTargetAttribute(this, AttributeDescription.SkipLocalsInitAttribute))
1264else if (attribute.IsTargetAttribute(this, AttributeDescription.DynamicAttribute))
1280else if (attribute.IsTargetAttribute(this, AttributeDescription.DisallowNullAttribute))
1284else if (attribute.IsTargetAttribute(this, AttributeDescription.AllowNullAttribute))
1288else if (attribute.IsTargetAttribute(this, AttributeDescription.MaybeNullAttribute))
1292else if (attribute.IsTargetAttribute(this, AttributeDescription.NotNullAttribute))
1296else if (attribute.IsTargetAttribute(this, AttributeDescription.MemberNotNullAttribute))
1301else if (attribute.IsTargetAttribute(this, AttributeDescription.MemberNotNullWhenAttribute))
1306else if (attribute.IsTargetAttribute(this, AttributeDescription.UnscopedRefAttribute))
1369=> FindAttribute(AttributeDescription.DisallowNullAttribute);
1372=> FindAttribute(AttributeDescription.AllowNullAttribute);
1375=> FindAttribute(AttributeDescription.MaybeNullAttribute);
1378=> FindAttribute(AttributeDescription.NotNullAttribute);
1381=> FindAttributes(AttributeDescription.MemberNotNullAttribute);
1384=> FindAttributes(AttributeDescription.MemberNotNullWhenAttribute);
1388private SourceAttributeData FindAttribute(AttributeDescription attributeDescription)
1391private ImmutableArray<SourceAttributeData> FindAttributes(AttributeDescription attributeDescription)
Symbols\Symbol.cs (15)
1304if (attrData.IsTargetAttribute(this, AttributeDescription.GuidAttribute))
1390attribute.IsTargetAttribute(this, AttributeDescription.DynamicAttribute))
1396reportExplicitUseOfReservedAttribute(attribute, arguments, AttributeDescription.IsReadOnlyAttribute))
1400reportExplicitUseOfReservedAttribute(attribute, arguments, AttributeDescription.IsUnmanagedAttribute))
1404reportExplicitUseOfReservedAttribute(attribute, arguments, AttributeDescription.IsByRefLikeAttribute))
1408attribute.IsTargetAttribute(this, AttributeDescription.TupleElementNamesAttribute))
1413attribute.IsTargetAttribute(this, AttributeDescription.NullableAttribute))
1419reportExplicitUseOfReservedAttribute(attribute, arguments, AttributeDescription.NullableContextAttribute))
1423reportExplicitUseOfReservedAttribute(attribute, arguments, AttributeDescription.NullablePublicOnlyAttribute))
1427reportExplicitUseOfReservedAttribute(attribute, arguments, AttributeDescription.NativeIntegerAttribute))
1431attribute.IsTargetAttribute(this, AttributeDescription.CaseSensitiveExtensionAttribute))
1437attribute.IsTargetAttribute(this, AttributeDescription.RequiredMemberAttribute))
1443attribute.IsTargetAttribute(this, AttributeDescription.ScopedRefAttribute))
1449reportExplicitUseOfReservedAttribute(attribute, arguments, AttributeDescription.RefSafetyRulesAttribute))
1458bool reportExplicitUseOfReservedAttribute(CSharpAttributeData attribute, in DecodeWellKnownAttributeArguments<AttributeSyntax, CSharpAttributeData, AttributeLocation> arguments, in AttributeDescription attributeDescription)
Symbols\Symbol_Attributes.cs (6)
157if (CSharpAttributeData.IsTargetEarlyAttribute(type, syntax, AttributeDescription.ObsoleteAttribute))
161else if (CSharpAttributeData.IsTargetEarlyAttribute(type, syntax, AttributeDescription.DeprecatedAttribute))
165else if (CSharpAttributeData.IsTargetEarlyAttribute(type, syntax, AttributeDescription.ExperimentalAttribute))
218if (arguments.Attribute.IsTargetAttribute(this, AttributeDescription.CompilerFeatureRequiredAttribute))
221arguments.Diagnostics.DiagnosticBag.Add(ErrorCode.ERR_ExplicitReservedAttr, arguments.AttributeSyntaxOpt.Location, AttributeDescription.CompilerFeatureRequiredAttribute.FullName);
461if (!boundAttribute.HasErrors && boundAttribute.IsTargetAttribute(this, AttributeDescription.TypeForwardedToAttribute) &&
Microsoft.CodeAnalysis.CSharp.ExpressionEvaluator.ExpressionCompiler.UnitTests (32)
Microsoft.CodeAnalysis.VisualBasic.ExpressionEvaluator.ExpressionCompiler.UnitTests (9)