855 references to DeclarationModifiers
Microsoft.CodeAnalysis.CSharp (855)
Binder\ExpressionVariableFinder.cs (4)
686private DeclarationModifiers _modifiers; 693DeclarationModifiers modifiers, 709finder._modifiers = DeclarationModifiers.None; 741modifiers: DeclarationModifiers.Private,
Declarations\DeclarationTreeBuilder.cs (10)
224modifiers: DeclarationModifiers.Internal | DeclarationModifiers.Partial | DeclarationModifiers.Sealed, 249modifiers: DeclarationModifiers.Partial, 339modifiers: DeclarationModifiers.Internal | DeclarationModifiers.Partial | DeclarationModifiers.Sealed, 788var modifiers = node.Modifiers.ToDeclarationModifiers(allowsPartialModifier: kind != DeclarationKind.Extension, diagnostics); 854var modifiers = node.Modifiers.ToDeclarationModifiers(allowsPartialModifier: false, diagnostics); 888var modifiers = node.Modifiers.ToDeclarationModifiers(allowsPartialModifier: false, diagnostics);
Declarations\SingleTypeDeclaration.cs (5)
22private readonly DeclarationModifiers _modifiers; 81DeclarationModifiers modifiers, 126public DeclarationModifiers Modifiers 269&& ((thisDecl.Modifiers & DeclarationModifiers.File) != 0 270|| (otherDecl.Modifiers & DeclarationModifiers.File) != 0))
Lowering\ClosureConversion\LambdaCapturedVariable.cs (1)
29DeclarationModifiers.Public,
Lowering\ClosureConversion\SynthesizedClosureMethod.cs (8)
156private static DeclarationModifiers MakeDeclarationModifiers(ClosureKind closureKind, MethodSymbol originalMethod) 158var mods = closureKind == ClosureKind.ThisOnly ? DeclarationModifiers.Private : DeclarationModifiers.Internal; 162mods |= DeclarationModifiers.Static; 167mods |= DeclarationModifiers.Async; 172mods |= DeclarationModifiers.Extern; 177mods |= DeclarationModifiers.Unsafe;
Lowering\LocalRewriter\DelegateCacheContainer.cs (1)
78field = new SynthesizedFieldSymbol(this, fieldType, fieldName, DeclarationModifiers.Public, isStatic: true);
Lowering\LocalRewriter\LoweredDynamicOperationFactory.cs (1)
713var field = new SynthesizedFieldSymbol(containerDefinition, callSiteType, fieldName, DeclarationModifiers.Public, isStatic: true);
Lowering\MethodToClassRewriter.cs (1)
390: base(containingType, methodBeingWrapped, syntax.SyntaxTree.GetReference(syntax), syntax.GetLocation(), name, DeclarationModifiers.Private,
Lowering\StateMachineRewriter\StateMachineFieldSymbol.cs (2)
49: base(stateMachineType, name, isPublic ? DeclarationModifiers.Public : DeclarationModifiers.Private, isReadOnly: false, isStatic: false)
Lowering\SynthesizedMethodBaseSymbol.cs (3)
38DeclarationModifiers declarationModifiers, 176internal sealed override bool HasUnsafeModifier => (DeclarationModifiers & DeclarationModifiers.Unsafe) != 0; 177internal sealed override bool HasSafeModifier => (DeclarationModifiers & DeclarationModifiers.Safe) != 0;
Lowering\SynthesizedSubmissionFields.cs (1)
67_declaringSubmissionClass, hostObjectTypeSymbol, "<host-object>", DeclarationModifiers.Private, isReadOnly: true, isStatic: false);
Parser\LanguageParser.cs (48)
1299private static DeclarationModifiers GetModifierExcludingScoped(SyntaxToken token) 1302internal static DeclarationModifiers GetModifierExcludingScoped(SyntaxKind kind, SyntaxKind contextualKind) 1307return DeclarationModifiers.Public; 1309return DeclarationModifiers.Internal; 1311return DeclarationModifiers.Protected; 1313return DeclarationModifiers.Private; 1315return DeclarationModifiers.Sealed; 1317return DeclarationModifiers.Abstract; 1319return DeclarationModifiers.Static; 1321return DeclarationModifiers.Virtual; 1323return DeclarationModifiers.Extern; 1325return DeclarationModifiers.New; 1327return DeclarationModifiers.Override; 1329return DeclarationModifiers.ReadOnly; 1331return DeclarationModifiers.Volatile; 1333return DeclarationModifiers.Unsafe; 1335return DeclarationModifiers.Partial; 1337return DeclarationModifiers.Async; 1339return DeclarationModifiers.Ref; 1344return DeclarationModifiers.Partial; 1346return DeclarationModifiers.Async; 1348return DeclarationModifiers.Required; 1350return DeclarationModifiers.File; 1352return DeclarationModifiers.Closed; 1354return DeclarationModifiers.Safe; 1359return DeclarationModifiers.None; 1369var newMod = GetModifierExcludingScoped(this.CurrentToken); 1371Debug.Assert(newMod != DeclarationModifiers.Scoped); 1372if (newMod == DeclarationModifiers.None) 1387case DeclarationModifiers.Partial: 1407(IsPossibleStartOfTypeDeclaration(nextToken.Kind) && GetModifierExcludingScoped(nextToken) != DeclarationModifiers.None)) 1419case DeclarationModifiers.Ref: 1441case DeclarationModifiers.File: 1447case DeclarationModifiers.Closed: 1453case DeclarationModifiers.Async: 1462case DeclarationModifiers.Required: 1468case DeclarationModifiers.Safe: 1514while (GetModifierExcludingScoped(this.CurrentToken) != DeclarationModifiers.None) 1552while (GetModifierExcludingScoped(this.CurrentToken) != DeclarationModifiers.None || 1562Debug.Assert(this.CurrentToken.Kind == SyntaxKind.IdentifierToken && GetModifierExcludingScoped(this.CurrentToken) != DeclarationModifiers.None); 1675return !SyntaxFacts.IsContextualKeyword(nextToken.ContextualKind) && GetModifierExcludingScoped(nextToken) != DeclarationModifiers.None; 1708not (DeclarationModifiers.None or DeclarationModifiers.Ref)) 2216if (GetModifierExcludingScoped(this.CurrentToken) != DeclarationModifiers.None) 3036if (GetModifierExcludingScoped(this.CurrentToken) != DeclarationModifiers.None && 8989DeclarationModifiers modifier = GetModifierExcludingScoped(nextToken); 8990if (modifier == DeclarationModifiers.Partial) 9004else if (modifier != DeclarationModifiers.None)
Symbols\AliasSymbol.cs (1)
388this.CheckUnsafeModifier(DeclarationModifiers.Unsafe, usingDirective.UnsafeKeyword.GetLocation(), diagnostics);
Symbols\Extensions\SynthesizedExtensionMarker.cs (3)
36private static DeclarationModifiers GetDeclarationModifiers() => DeclarationModifiers.Private | DeclarationModifiers.Static;
Symbols\Source\FieldSymbolWithAttributesAndModifiers.cs (8)
25protected abstract DeclarationModifiers Modifiers { get; } 47=> (Modifiers & DeclarationModifiers.Static) != 0; 50=> (Modifiers & DeclarationModifiers.ReadOnly) != 0; 56=> (Modifiers & DeclarationModifiers.Const) != 0; 59=> (Modifiers & DeclarationModifiers.Volatile) != 0; 62=> (Modifiers & DeclarationModifiers.Fixed) != 0; 65=> (Modifiers & DeclarationModifiers.Safe) != 0; 68=> (Modifiers & DeclarationModifiers.Unsafe) != 0;
Symbols\Source\GlobalExpressionVariable.cs (3)
31DeclarationModifiers modifiers, 44DeclarationModifiers modifiers, 170DeclarationModifiers modifiers,
Symbols\Source\LocalFunctionSymbol.cs (12)
21private readonly DeclarationModifiers _declarationModifiers; 52DeclarationModifiers.Private | 61if ((_declarationModifiers & DeclarationModifiers.Safe) != 0) 406public override bool IsAsync => (_declarationModifiers & DeclarationModifiers.Async) != 0; 408public override bool IsStatic => (_declarationModifiers & DeclarationModifiers.Static) != 0; 410public override bool IsVirtual => (_declarationModifiers & DeclarationModifiers.Virtual) != 0; 412public override bool IsOverride => (_declarationModifiers & DeclarationModifiers.Override) != 0; 414public override bool IsAbstract => (_declarationModifiers & DeclarationModifiers.Abstract) != 0; 416public override bool IsSealed => (_declarationModifiers & DeclarationModifiers.Sealed) != 0; 418public override bool IsExtern => (_declarationModifiers & DeclarationModifiers.Extern) != 0; 420internal override bool HasUnsafeModifier => (_declarationModifiers & DeclarationModifiers.Unsafe) != 0; 421internal override bool HasSafeModifier => (_declarationModifiers & DeclarationModifiers.Safe) != 0;
Symbols\Source\ModifierUtils.cs (179)
15internal static DeclarationModifiers MakeAndCheckNonTypeMemberModifiers( 18DeclarationModifiers defaultAccess, 19DeclarationModifiers allowedModifiers, 26var result = modifiers.ToDeclarationModifiers( 27allowsPartialModifier: (allowedModifiers & DeclarationModifiers.Partial) != 0, 35hasExplicitAccessModifier = (result & DeclarationModifiers.AccessibilityMask) != 0; 42internal static DeclarationModifiers CheckModifiers( 45DeclarationModifiers modifiers, 46DeclarationModifiers allowedModifiers, 55DeclarationModifiers reportStaticNotVirtualForModifiers = DeclarationModifiers.None; 59Debug.Assert((allowedModifiers & (DeclarationModifiers.Override | DeclarationModifiers.Virtual)) == 0); 61else if ((modifiers & allowedModifiers & DeclarationModifiers.Static) != 0) 65reportStaticNotVirtualForModifiers = allowedModifiers & DeclarationModifiers.Override; 69reportStaticNotVirtualForModifiers = allowedModifiers & (DeclarationModifiers.Abstract | DeclarationModifiers.Override | DeclarationModifiers.Virtual); 75DeclarationModifiers errorModifiers = modifiers & ~allowedModifiers; 76DeclarationModifiers result = modifiers & allowedModifiers; 78while (errorModifiers != DeclarationModifiers.None) 80DeclarationModifiers oneError = errorModifiers & ~(errorModifiers - 1); 81Debug.Assert(oneError != DeclarationModifiers.None); 86case DeclarationModifiers.Partial: 92case DeclarationModifiers.Abstract: 93case DeclarationModifiers.Override: 94case DeclarationModifiers.Virtual: 112checkFeature(DeclarationModifiers.PrivateProtected, MessageID.IDS_FeaturePrivateProtected) | 113checkFeature(DeclarationModifiers.Required, MessageID.IDS_FeatureRequiredMembers) | 114checkFeature(DeclarationModifiers.File, MessageID.IDS_FeatureFileTypes) | 115checkFeature(DeclarationModifiers.Closed, MessageID.IDS_FeatureClosedClasses) | 116checkFeature(DeclarationModifiers.Async, MessageID.IDS_FeatureAsync); 118if ((result & DeclarationModifiers.Safe) != 0) 125if ((result & DeclarationModifiers.Unsafe) != 0) 128result &= ~DeclarationModifiers.Safe; 135bool checkFeature(DeclarationModifiers modifier, MessageID featureID) 151DeclarationModifiers modifiers, 152DeclarationModifiers defaultInterfaceImplementationModifiers, 161if ((modifiers & defaultInterfaceImplementationModifiers & DeclarationModifiers.Static) != 0 && 162(modifiers & defaultInterfaceImplementationModifiers & (DeclarationModifiers.Sealed | DeclarationModifiers.Abstract | DeclarationModifiers.Virtual)) != 0) 164var reportModifiers = DeclarationModifiers.Sealed | DeclarationModifiers.Abstract | DeclarationModifiers.Virtual; 165if ((modifiers & defaultInterfaceImplementationModifiers & DeclarationModifiers.Sealed) != 0 && 166(modifiers & defaultInterfaceImplementationModifiers & (DeclarationModifiers.Abstract | DeclarationModifiers.Virtual)) != 0) 168diagnostics.Add(ErrorCode.ERR_BadMemberFlag, errorLocation, ConvertSingleModifierToSyntaxText(DeclarationModifiers.Sealed)); 169reportModifiers &= ~DeclarationModifiers.Sealed; 183if ((modifiers & defaultInterfaceImplementationModifiers & DeclarationModifiers.Static) != 0) 199internal static void ReportUnsupportedModifiersForLanguageVersion(DeclarationModifiers modifiers, DeclarationModifiers unsupportedModifiers, Location errorLocation, BindingDiagnosticBag diagnostics, LanguageVersion availableVersion, LanguageVersion requiredVersion) 201DeclarationModifiers errorModifiers = modifiers & unsupportedModifiers; 204while (errorModifiers != DeclarationModifiers.None) 206DeclarationModifiers oneError = errorModifiers & ~(errorModifiers - 1); 207Debug.Assert(oneError != DeclarationModifiers.None); 216internal static void CheckFeatureAvailabilityForStaticAbstractMembersInInterfacesIfNeeded(DeclarationModifiers mods, bool isExplicitInterfaceImplementation, Location location, BindingDiagnosticBag diagnostics) 218if (isExplicitInterfaceImplementation && (mods & DeclarationModifiers.Static) != 0) 226ModifierUtils.ReportUnsupportedModifiersForLanguageVersion(mods, DeclarationModifiers.Static, location, diagnostics, availableVersion, requiredVersion); 241DeclarationModifiers.Partial, 242DeclarationModifiers.Partial, 251internal static DeclarationModifiers AdjustModifiersForAnInterfaceMember(DeclarationModifiers mods, bool hasBody, bool isExplicitInterfaceImplementation, bool forMethod) 255bool notPartialOrNewPartialBehavior = (mods & DeclarationModifiers.Partial) == 0 || !forMethod; 257if ((mods & DeclarationModifiers.AccessibilityMask) == 0) 261mods |= DeclarationModifiers.Public; 265mods |= DeclarationModifiers.Private; 271if ((mods & DeclarationModifiers.Abstract) != 0) 273mods |= DeclarationModifiers.Sealed; 276else if ((mods & DeclarationModifiers.Static) != 0) 278mods &= ~DeclarationModifiers.Sealed; 280else if ((mods & (DeclarationModifiers.Private | DeclarationModifiers.Virtual | DeclarationModifiers.Abstract)) == 0 && notPartialOrNewPartialBehavior) 284if (hasBody || (mods & (DeclarationModifiers.Extern | DeclarationModifiers.Partial | DeclarationModifiers.Sealed)) != 0) 286if ((mods & DeclarationModifiers.Sealed) == 0) 288mods |= DeclarationModifiers.Virtual; 292mods &= ~DeclarationModifiers.Sealed; 297mods |= DeclarationModifiers.Abstract; 304internal static string ConvertSingleModifierToSyntaxText(DeclarationModifiers modifier) 308case DeclarationModifiers.Abstract: 310case DeclarationModifiers.Sealed: 312case DeclarationModifiers.Static: 314case DeclarationModifiers.New: 316case DeclarationModifiers.Public: 318case DeclarationModifiers.Protected: 320case DeclarationModifiers.Internal: 322case DeclarationModifiers.ProtectedInternal: 324case DeclarationModifiers.Private: 326case DeclarationModifiers.PrivateProtected: 328case DeclarationModifiers.ReadOnly: 330case DeclarationModifiers.Const: 332case DeclarationModifiers.Volatile: 334case DeclarationModifiers.Extern: 336case DeclarationModifiers.Partial: 338case DeclarationModifiers.Unsafe: 340case DeclarationModifiers.Safe: 342case DeclarationModifiers.Fixed: 344case DeclarationModifiers.Virtual: 346case DeclarationModifiers.Override: 348case DeclarationModifiers.Async: 350case DeclarationModifiers.Ref: 352case DeclarationModifiers.Required: 354case DeclarationModifiers.Scoped: 356case DeclarationModifiers.File: 358case DeclarationModifiers.Closed: 365private static DeclarationModifiers ToDeclarationModifier(SyntaxKind kind) 370return DeclarationModifiers.Abstract; 372return DeclarationModifiers.Async; 374return DeclarationModifiers.Sealed; 376return DeclarationModifiers.Static; 378return DeclarationModifiers.New; 380return DeclarationModifiers.Public; 382return DeclarationModifiers.Protected; 384return DeclarationModifiers.Internal; 386return DeclarationModifiers.Private; 388return DeclarationModifiers.Extern; 390return DeclarationModifiers.ReadOnly; 392return DeclarationModifiers.Partial; 394return DeclarationModifiers.Unsafe; 396return DeclarationModifiers.Safe; 398return DeclarationModifiers.Virtual; 400return DeclarationModifiers.Override; 402return DeclarationModifiers.Const; 404return DeclarationModifiers.Fixed; 406return DeclarationModifiers.Volatile; 408return DeclarationModifiers.Ref; 410return DeclarationModifiers.Required; 412return DeclarationModifiers.Scoped; 414return DeclarationModifiers.File; 416return DeclarationModifiers.Closed; 429private static DeclarationModifiers GetDeclarationModifiersAndCheckForDuplicateModifiers( 434var allModifiers = DeclarationModifiers.None; 439var thisModifier = ToDeclarationModifier(modifierToken.ContextualKind()); 454public static DeclarationModifiers ToDeclarationModifiers( 457var result = GetDeclarationModifiersAndCheckForDuplicateModifiers(modifiers, diagnostics, out var reportedDiagnostic); 462switch (result & DeclarationModifiers.AccessibilityMask) 464case DeclarationModifiers.Protected | DeclarationModifiers.Internal: 466result &= ~DeclarationModifiers.AccessibilityMask; 467result |= DeclarationModifiers.ProtectedInternal; 470case DeclarationModifiers.Private | DeclarationModifiers.Protected: 472result &= ~DeclarationModifiers.AccessibilityMask; 473result |= DeclarationModifiers.PrivateProtected; 528DeclarationModifiers modifierKind, 529DeclarationModifiers allModifiers, 546internal static bool CheckAccessibility(DeclarationModifiers modifiers, Symbol symbol, bool isExplicitInterfaceImplementation, BindingDiagnosticBag diagnostics, Location errorLocation) 556(symbol.Kind != SymbolKind.Method || (modifiers & DeclarationModifiers.Partial) == 0) && 557(modifiers & DeclarationModifiers.Static) == 0) 559switch (modifiers & DeclarationModifiers.AccessibilityMask) 561case DeclarationModifiers.Protected: 562case DeclarationModifiers.ProtectedInternal: 563case DeclarationModifiers.PrivateProtected: 574if ((modifiers & DeclarationModifiers.Required) != 0) 588case FieldSymbol when (modifiers & DeclarationModifiers.ReadOnly) != 0: 604internal static Accessibility EffectiveAccessibility(DeclarationModifiers modifiers) 606switch (modifiers & DeclarationModifiers.AccessibilityMask) 608case DeclarationModifiers.None: 610case DeclarationModifiers.Private: 612case DeclarationModifiers.Protected: 614case DeclarationModifiers.Internal: 616case DeclarationModifiers.Public: 618case DeclarationModifiers.ProtectedInternal: 620case DeclarationModifiers.PrivateProtected: 630internal static bool IsValidAccessibility(DeclarationModifiers modifiers) 632switch (modifiers & DeclarationModifiers.AccessibilityMask) 634case DeclarationModifiers.None: 635case DeclarationModifiers.Private: 636case DeclarationModifiers.Protected: 637case DeclarationModifiers.Internal: 638case DeclarationModifiers.Public: 639case DeclarationModifiers.ProtectedInternal: 640case DeclarationModifiers.PrivateProtected:
Symbols\Source\SourceConstructorSymbol.cs (22)
98private static (DeclarationModifiers, Flags) MakeModifiersAndFlags( 110DeclarationModifiers declarationModifiers = MakeModifiers(containingType, syntax, methodKind, hasAnyBody, location, diagnostics, out modifierErrors, out bool hasExplicitAccessModifier, out report_ERR_StaticConstructorWithAccessModifiers); 141private static DeclarationModifiers MakeModifiers( 145var defaultAccess = (methodKind == MethodKind.StaticConstructor) ? DeclarationModifiers.None : DeclarationModifiers.Private; 148DeclarationModifiers allowedModifiers = 149DeclarationModifiers.AccessibilityMask | 150DeclarationModifiers.Static | 151DeclarationModifiers.Extern | 152DeclarationModifiers.Unsafe | 153DeclarationModifiers.Safe; 157allowedModifiers |= DeclarationModifiers.Partial; 161var mods = ModifierUtils.MakeAndCheckNonTypeMemberModifiers(isForInterfaceMember: isInterface, syntax.Modifiers, defaultAccess, allowedModifiers, location, diagnostics, out modifierErrors, out hasExplicitAccessModifier); 169if ((mods & DeclarationModifiers.AccessibilityMask) != 0 && 172mods = mods & ~DeclarationModifiers.AccessibilityMask; 177mods |= DeclarationModifiers.Private; // we mark static constructors private in the symbol table 182DeclarationModifiers.Extern, 186if ((mods & DeclarationModifiers.Unsafe) == DeclarationModifiers.Unsafe && 255internal sealed override bool HasUnsafeModifier => (DeclarationModifiers & DeclarationModifiers.Unsafe) != 0; 256internal sealed override bool HasSafeModifier => (DeclarationModifiers & DeclarationModifiers.Safe) != 0;
Symbols\Source\SourceConstructorSymbolBase.cs (1)
28(DeclarationModifiers declarationModifiers, Flags flags) modifiersAndFlags)
Symbols\Source\SourceDelegateMethodSymbol.cs (10)
30DeclarationModifiers declarationModifiers) 146internal sealed override bool HasUnsafeModifier => (DeclarationModifiers & DeclarationModifiers.Unsafe) != 0; 147internal sealed override bool HasSafeModifier => (DeclarationModifiers & DeclarationModifiers.Safe) != 0; 223: base(delegateType, voidType, syntax, MethodKind.Constructor, RefKind.None, DeclarationModifiers.Public) 270: base(delegateType, returnType, syntax, MethodKind.DelegateInvoke, refKind, DeclarationModifiers.Virtual | DeclarationModifiers.Public) 363: base((SourceNamedTypeSymbol)invoke.ContainingType, iAsyncResultType, syntax, MethodKind.Ordinary, RefKind.None, DeclarationModifiers.Virtual | DeclarationModifiers.Public) 403: base((SourceNamedTypeSymbol)invoke.ContainingType, invoke.ReturnTypeWithAnnotations, syntax, MethodKind.Ordinary, invoke.RefKind, DeclarationModifiers.Virtual | DeclarationModifiers.Public)
Symbols\Source\SourceDestructorSymbol.cs (15)
65private static (DeclarationModifiers, Flags) MakeModifiersAndFlags(NamedTypeSymbol containingType, DestructorDeclarationSyntax syntax, bool isNullableAnalysisEnabled, Location location, BindingDiagnosticBag diagnostics, out bool modifierErrors) 67DeclarationModifiers declarationModifiers = MakeModifiers(containingType, syntax.Modifiers, location, diagnostics, out modifierErrors); 105internal sealed override bool HasUnsafeModifier => (DeclarationModifiers & DeclarationModifiers.Unsafe) != 0; 106internal sealed override bool HasSafeModifier => (DeclarationModifiers & DeclarationModifiers.Safe) != 0; 136private static DeclarationModifiers MakeModifiers(NamedTypeSymbol containingType, SyntaxTokenList modifiers, Location location, BindingDiagnosticBag diagnostics, out bool modifierErrors) 139const DeclarationModifiers allowedModifiers = DeclarationModifiers.Extern | DeclarationModifiers.Unsafe | DeclarationModifiers.Safe; 140var mods = ModifierUtils.MakeAndCheckNonTypeMemberModifiers(isForInterfaceMember: containingType.IsInterface, modifiers, DeclarationModifiers.None, allowedModifiers, location, diagnostics, out modifierErrors, out _); 142mods = (mods & ~DeclarationModifiers.AccessibilityMask) | DeclarationModifiers.Protected; // we mark destructors protected in the symbol table 144if ((mods & DeclarationModifiers.Unsafe) == DeclarationModifiers.Unsafe &&
Symbols\Source\SourceEnumConstantSymbol.cs (4)
76protected sealed override DeclarationModifiers Modifiers 80return DeclarationModifiers.Const | DeclarationModifiers.Static | DeclarationModifiers.Public;
Symbols\Source\SourceEventAccessorSymbol.cs (2)
197internal sealed override bool HasUnsafeModifier => (DeclarationModifiers & DeclarationModifiers.Unsafe) != 0; 198internal sealed override bool HasSafeModifier => (DeclarationModifiers & DeclarationModifiers.Safe) != 0;
Symbols\Source\SourceEventFieldSymbol.cs (2)
28(associatedEvent.Modifiers & (~DeclarationModifiers.AccessibilityMask)) | DeclarationModifiers.Private,
Symbols\Source\SourceEventSymbol.cs (43)
31private readonly DeclarationModifiers _modifiers; 437=> (_modifiers & DeclarationModifiers.Safe) != 0; 441get { return (_modifiers & DeclarationModifiers.Abstract) != 0; } 446get { return (_modifiers & DeclarationModifiers.Extern) != 0; } 453get { return (_modifiers & DeclarationModifiers.Static) != 0; } 458get { return (_modifiers & DeclarationModifiers.Override) != 0; } 463get { return (_modifiers & DeclarationModifiers.Sealed) != 0; } 468get { return (_modifiers & DeclarationModifiers.Virtual) != 0; } 473get { return (_modifiers & DeclarationModifiers.ReadOnly) != 0; } 478get { return (_modifiers & DeclarationModifiers.Unsafe) != 0; } 521get { return (_modifiers & DeclarationModifiers.New) != 0; } 524internal DeclarationModifiers Modifiers 534private DeclarationModifiers MakeModifiers(SyntaxTokenList modifiers, bool explicitInterfaceImplementation, 540var defaultAccess = isInterface && !explicitInterfaceImplementation ? DeclarationModifiers.Public : DeclarationModifiers.Private; 541var defaultInterfaceImplementationModifiers = DeclarationModifiers.None; 544var allowedModifiers = DeclarationModifiers.Partial | DeclarationModifiers.Unsafe | DeclarationModifiers.Safe; 547allowedModifiers |= DeclarationModifiers.New | 548DeclarationModifiers.Sealed | 549DeclarationModifiers.Abstract | 550DeclarationModifiers.Static | 551DeclarationModifiers.Virtual | 552DeclarationModifiers.AccessibilityMask; 556allowedModifiers |= DeclarationModifiers.Override; 562defaultAccess = DeclarationModifiers.None; 564allowedModifiers |= DeclarationModifiers.Extern; 565defaultInterfaceImplementationModifiers |= DeclarationModifiers.Sealed | 566DeclarationModifiers.Abstract | 567DeclarationModifiers.Static | 568DeclarationModifiers.Virtual | 569DeclarationModifiers.Extern | 570DeclarationModifiers.AccessibilityMask; 579allowedModifiers |= DeclarationModifiers.Abstract; 582allowedModifiers |= DeclarationModifiers.Static; 587allowedModifiers |= DeclarationModifiers.ReadOnly; 592allowedModifiers |= DeclarationModifiers.Extern; 595var mods = ModifierUtils.MakeAndCheckNonTypeMemberModifiers(isForInterfaceMember: isInterface, 969internal bool IsPartial => (this.Modifiers & DeclarationModifiers.Partial) != 0;
Symbols\Source\SourceFieldSymbol.cs (2)
45return (Modifiers & DeclarationModifiers.New) != 0; 164internal override bool IsRequired => (Modifiers & DeclarationModifiers.Required) != 0;
Symbols\Source\SourceFixedFieldSymbol.cs (2)
31DeclarationModifiers modifiers, 161_internalField = new SynthesizedFieldSymbol(this, ((PointerTypeSymbol)field.Type).PointedAtType, FixedElementFieldName, DeclarationModifiers.Public);
Symbols\Source\SourceMemberContainerSymbol.cs (88)
191private readonly DeclarationModifiers _declModifiers; 241var modifiers = MakeModifiers(typeKind, diagnostics); 248int access = (int)(modifiers & DeclarationModifiers.AccessibilityMask); 251if ((modifiers & DeclarationModifiers.Partial) != 0) 254modifiers &= ~DeclarationModifiers.AccessibilityMask; // remove them all 255modifiers |= (DeclarationModifiers)access; // except the one 259var specialType = access == (int)DeclarationModifiers.Public 293private DeclarationModifiers MakeModifiers(TypeKind typeKind, BindingDiagnosticBag diagnostics) 296DeclarationModifiers defaultAccess; 299DeclarationModifiers allowedModifiers; 302allowedModifiers = DeclarationModifiers.None; 303defaultAccess = DeclarationModifiers.Public; 307allowedModifiers = DeclarationModifiers.AccessibilityMask | DeclarationModifiers.File; 311defaultAccess = DeclarationModifiers.Internal; 315allowedModifiers |= DeclarationModifiers.New; 319defaultAccess = DeclarationModifiers.Public; 323defaultAccess = DeclarationModifiers.Private; 331allowedModifiers |= DeclarationModifiers.Partial | DeclarationModifiers.Sealed | DeclarationModifiers.Abstract 332| DeclarationModifiers.Unsafe | DeclarationModifiers.Safe | DeclarationModifiers.Closed; 336allowedModifiers |= DeclarationModifiers.Static; 341allowedModifiers |= DeclarationModifiers.Partial | DeclarationModifiers.ReadOnly | DeclarationModifiers.Unsafe | DeclarationModifiers.Safe; 345allowedModifiers |= DeclarationModifiers.Ref; 350allowedModifiers |= DeclarationModifiers.Partial | DeclarationModifiers.Unsafe | DeclarationModifiers.Safe; 353allowedModifiers |= DeclarationModifiers.Unsafe | DeclarationModifiers.Safe; 359var mods = MakeAndCheckTypeModifiers( 368(mods & DeclarationModifiers.Abstract) != 0 && 369(mods & (DeclarationModifiers.Sealed | DeclarationModifiers.Static)) != 0) 375(mods & DeclarationModifiers.Closed) != 0) 377if ((mods & (DeclarationModifiers.Sealed | DeclarationModifiers.Static)) != 0) 380if ((mods & DeclarationModifiers.Abstract) != 0) 385(mods & (DeclarationModifiers.Sealed | DeclarationModifiers.Static)) == (DeclarationModifiers.Sealed | DeclarationModifiers.Static)) 390if ((mods & DeclarationModifiers.Unsafe) == DeclarationModifiers.Unsafe && 399mods |= DeclarationModifiers.Abstract; 402if ((mods & DeclarationModifiers.Closed) != 0) 403mods |= DeclarationModifiers.Abstract; 410mods |= DeclarationModifiers.Sealed; 417private DeclarationModifiers MakeAndCheckTypeModifiers( 418DeclarationModifiers defaultAccess, 419DeclarationModifiers allowedModifiers, 425var result = DeclarationModifiers.Unset; 432var mods = decl.Modifiers; 434if (partCount > 1 && (mods & DeclarationModifiers.Partial) == 0) 453if (result == DeclarationModifiers.Unset) 464if ((result & DeclarationModifiers.AccessibilityMask) == 0) 468else if ((result & DeclarationModifiers.File) != 0) 475if ((result & DeclarationModifiers.Partial) == 0) 484diagnostics.Add((result & DeclarationModifiers.File) != 0 506var mods = singleDeclaration.Modifiers; 507if ((mods & DeclarationModifiers.Partial) == 0) 886public override bool IsStatic => HasFlag(DeclarationModifiers.Static); 888public sealed override bool IsRefLikeType => HasFlag(DeclarationModifiers.Ref); 890public override bool IsReadOnly => HasFlag(DeclarationModifiers.ReadOnly); 892public override bool IsSealed => HasFlag(DeclarationModifiers.Sealed); 894public override bool IsAbstract => HasFlag(DeclarationModifiers.Abstract); 896internal bool IsPartial => HasFlag(DeclarationModifiers.Partial); 898internal bool IsNew => HasFlag(DeclarationModifiers.New); 900internal sealed override bool IsFileLocal => HasFlag(DeclarationModifiers.File); 902internal sealed override bool IsClosed => HasFlag(DeclarationModifiers.Closed); 962internal bool HasUnsafeModifier => HasFlag(DeclarationModifiers.Unsafe); 985private bool HasFlag(DeclarationModifiers flag) => (_declModifiers & flag) != 0; 5820var modifiers = SourceMemberFieldSymbol.MakeModifiers(this, fieldSyntax.Declaration.Variables[0].Identifier, fieldSyntax.Modifiers, isRefField: refKind != RefKind.None, diagnostics, out modifierErrors); 5823var fieldSymbol = (modifiers & DeclarationModifiers.Fixed) == 0 5835DeclarationModifiers.Private | (modifiers & DeclarationModifiers.Static), 5935DeclarationModifiers.Private | (property.IsStatic ? DeclarationModifiers.Static : 0), 5971DeclarationModifiers.Private | (@event.IsStatic ? DeclarationModifiers.Static : 0), 6090ExpressionFieldFinder.FindExpressionVariables(builder.NonTypeMembersWithPartialImplementations, vdecl, this, DeclarationModifiers.Private, 6105DeclarationModifiers.Private,
Symbols\Source\SourceMemberFieldSymbol.cs (56)
23private readonly DeclarationModifiers _modifiers; 27DeclarationModifiers modifiers, 36protected sealed override DeclarationModifiers Modifiers 208internal static DeclarationModifiers MakeModifiers(NamedTypeSymbol containingType, SyntaxToken firstIdentifier, SyntaxTokenList modifiers, bool isRefField, BindingDiagnosticBag diagnostics, out bool modifierErrors) 211DeclarationModifiers defaultAccess = 212isInterface ? DeclarationModifiers.Public : DeclarationModifiers.Private; 214DeclarationModifiers allowedModifiers = 215DeclarationModifiers.AccessibilityMask | 216DeclarationModifiers.Const | 217DeclarationModifiers.New | 218DeclarationModifiers.ReadOnly | 219DeclarationModifiers.Static | 220DeclarationModifiers.Volatile | 221DeclarationModifiers.Fixed | 222DeclarationModifiers.Unsafe | 223DeclarationModifiers.Safe | 224DeclarationModifiers.Abstract | 225DeclarationModifiers.Required; // Some of these are filtered out later, when illegal, for better error messages. 228DeclarationModifiers result = ModifierUtils.MakeAndCheckNonTypeMemberModifiers( 232if ((result & DeclarationModifiers.Abstract) != 0) 235result &= ~DeclarationModifiers.Abstract; 238if ((result & DeclarationModifiers.Fixed) != 0) 246reportBadMemberFlagIfAny(result, DeclarationModifiers.Static, diagnostics, errorLocation); 247reportBadMemberFlagIfAny(result, DeclarationModifiers.ReadOnly, diagnostics, errorLocation); 248reportBadMemberFlagIfAny(result, DeclarationModifiers.Const, diagnostics, errorLocation); 249reportBadMemberFlagIfAny(result, DeclarationModifiers.Volatile, diagnostics, errorLocation); 250reportBadMemberFlagIfAny(result, DeclarationModifiers.Required, diagnostics, errorLocation); 252result &= ~(DeclarationModifiers.Static | DeclarationModifiers.ReadOnly | DeclarationModifiers.Const | DeclarationModifiers.Volatile | DeclarationModifiers.Required); 253Debug.Assert((result & ~(DeclarationModifiers.AccessibilityMask | DeclarationModifiers.Fixed | DeclarationModifiers.Unsafe | DeclarationModifiers.Safe | DeclarationModifiers.New)) == 0); 256if ((result & DeclarationModifiers.Const) != 0) 258if ((result & DeclarationModifiers.Static) != 0) 264reportBadMemberFlagIfAny(result, DeclarationModifiers.ReadOnly, diagnostics, errorLocation); 265reportBadMemberFlagIfAny(result, DeclarationModifiers.Volatile, diagnostics, errorLocation); 266reportBadMemberFlagIfAny(result, DeclarationModifiers.Unsafe, diagnostics, errorLocation); 267reportBadMemberFlagIfAny(result, DeclarationModifiers.Safe, diagnostics, errorLocation); 269if (reportBadMemberFlagIfAny(result, DeclarationModifiers.Required, diagnostics, errorLocation)) 271result &= ~DeclarationModifiers.Required; 274result |= DeclarationModifiers.Static; // "constants are considered static members" 278if ((result & DeclarationModifiers.Static) != 0 && (result & DeclarationModifiers.Required) != 0) 282result &= ~DeclarationModifiers.Required; 295reportBadMemberFlagIfAny(result, DeclarationModifiers.Static, diagnostics, errorLocation); 296reportBadMemberFlagIfAny(result, DeclarationModifiers.Const, diagnostics, errorLocation); 297reportBadMemberFlagIfAny(result, DeclarationModifiers.Volatile, diagnostics, errorLocation); 302static bool reportBadMemberFlagIfAny(DeclarationModifiers result, DeclarationModifiers modifier, BindingDiagnosticBag diagnostics, SourceLocation errorLocation) 390DeclarationModifiers modifiers,
Symbols\Source\SourceMemberMethodSymbol.cs (20)
182private static bool ModifiersRequireMetadataVirtual(DeclarationModifiers modifiers) 184return (modifiers & (DeclarationModifiers.Abstract | DeclarationModifiers.Virtual | DeclarationModifiers.Override)) != 0; 190DeclarationModifiers declarationModifiers, 204bool isMetadataVirtual = (isExplicitInterfaceImplementation && (declarationModifiers & DeclarationModifiers.Static) == 0) || ModifiersRequireMetadataVirtual(declarationModifiers); 236DeclarationModifiers declarationModifiers, 304protected readonly DeclarationModifiers DeclarationModifiers; 337(DeclarationModifiers declarationModifiers, Flags flags) modifiersAndFlags) 424DeclarationModifiers declarationModifiers, 619return (this.DeclarationModifiers & DeclarationModifiers.Extern) != 0; 635return (this.DeclarationModifiers & DeclarationModifiers.Sealed) != 0; 643return (this.DeclarationModifiers & DeclarationModifiers.Abstract) != 0; 651return (this.DeclarationModifiers & DeclarationModifiers.Override) != 0; 659return (this.DeclarationModifiers & DeclarationModifiers.Partial) != 0; 667return (this.DeclarationModifiers & DeclarationModifiers.Virtual) != 0; 675return (this.DeclarationModifiers & DeclarationModifiers.New) != 0; 683return (this.DeclarationModifiers & DeclarationModifiers.Static) != 0; 691return (this.DeclarationModifiers & DeclarationModifiers.Async) != 0; 707return (this.DeclarationModifiers & DeclarationModifiers.ReadOnly) != 0;
Symbols\Source\SourceNamespaceSymbol.AliasesAndUsings.cs (1)
747declaringSymbol.CheckUnsafeModifier(DeclarationModifiers.Unsafe, unsafeKeywordLocation, diagnostics);
Symbols\Source\SourceOrdinaryMethodOrUserDefinedOperatorSymbol.cs (3)
24protected SourceOrdinaryMethodOrUserDefinedOperatorSymbol(NamedTypeSymbol containingType, SyntaxReference syntaxReferenceOpt, Location location, bool isIterator, (DeclarationModifiers declarationModifiers, Flags flags) modifiersAndFlags) 174internal sealed override bool HasUnsafeModifier => (DeclarationModifiers & DeclarationModifiers.Unsafe) != 0; 175internal sealed override bool HasSafeModifier => (DeclarationModifiers & DeclarationModifiers.Safe) != 0;
Symbols\Source\SourceOrdinaryMethodSymbol.cs (47)
89private static (DeclarationModifiers, Flags) MakeModifiersAndFlags( 93(DeclarationModifiers declarationModifiers, bool hasExplicitAccessMod) = MakeModifiers(syntax, containingType, methodKind, hasBody: syntax.HasAnyBody(), location, diagnostics); 456private static DeclarationModifiers MakeDeclarationModifiers(MethodDeclarationSyntax syntax, NamedTypeSymbol containingType, Location location, DeclarationModifiers allowedModifiers, BindingDiagnosticBag diagnostics) 459syntax.Modifiers, defaultAccess: DeclarationModifiers.None, allowedModifiers, location, diagnostics, out _, out _); 752private static (DeclarationModifiers mods, bool hasExplicitAccessMod) MakeModifiers(MethodDeclarationSyntax syntax, NamedTypeSymbol containingType, MethodKind methodKind, bool hasBody, Location location, BindingDiagnosticBag diagnostics) 760var defaultAccess = isInterface && !isExplicitInterfaceImplementation ? DeclarationModifiers.None : DeclarationModifiers.Private; 763var allowedModifiers = DeclarationModifiers.Partial | DeclarationModifiers.Unsafe; 764var defaultInterfaceImplementationModifiers = DeclarationModifiers.None; 768allowedModifiers |= DeclarationModifiers.Static | 769DeclarationModifiers.AccessibilityMask; 773allowedModifiers |= DeclarationModifiers.New | 774DeclarationModifiers.Sealed | 775DeclarationModifiers.Abstract | 776DeclarationModifiers.Virtual; 780allowedModifiers |= DeclarationModifiers.Override; 784defaultInterfaceImplementationModifiers |= DeclarationModifiers.Sealed | 785DeclarationModifiers.Abstract | 786DeclarationModifiers.Static | 787DeclarationModifiers.Virtual | 788DeclarationModifiers.Extern | 789DeclarationModifiers.Async | 790DeclarationModifiers.Partial | 791DeclarationModifiers.AccessibilityMask; 801allowedModifiers |= DeclarationModifiers.Abstract; 804allowedModifiers |= DeclarationModifiers.Static; 807allowedModifiers |= DeclarationModifiers.Async | DeclarationModifiers.Extern | DeclarationModifiers.Safe; 811allowedModifiers |= DeclarationModifiers.ReadOnly; 817DeclarationModifiers mods = MakeDeclarationModifiers(syntax, containingType, location, allowedModifiers, diagnostics); 818if ((mods & DeclarationModifiers.AccessibilityMask) == 0) 838private static DeclarationModifiers AddImpliedModifiers(DeclarationModifiers mods, bool containingTypeIsInterface, MethodKind methodKind, bool hasBody) 850mods = (mods & ~DeclarationModifiers.AccessibilityMask) | DeclarationModifiers.Private; 855private const DeclarationModifiers PartialMethodExtendedModifierMask = 856DeclarationModifiers.Virtual | 857DeclarationModifiers.Override | 858DeclarationModifiers.New | 859DeclarationModifiers.Sealed | 860DeclarationModifiers.Extern;
Symbols\Source\SourceOrdinaryMethodSymbolBase.cs (1)
35(DeclarationModifiers declarationModifiers, Flags flags) modifiersAndFlags) :
Symbols\Source\SourcePropertyAccessorSymbol.cs (34)
32DeclarationModifiers propertyModifiers, 69DeclarationModifiers propertyModifiers, 90DeclarationModifiers propertyModifiers, 116DeclarationModifiers propertyModifiers, 133DeclarationModifiers propertyModifiers, 168DeclarationModifiers propertyModifiers, 202DeclarationModifiers propertyModifiers, 248private static (DeclarationModifiers, Flags) MakeModifiersAndFlags( 249NamedTypeSymbol containingType, SourcePropertySymbolBase property, DeclarationModifiers propertyModifiers, Location location, 257var declarationModifiers = MakeModifiers(containingType, modifiers, isExplicitInterfaceImplementation, hasAnyBody, location, diagnostics, out modifierErrors); 260declarationModifiers |= propertyModifiers & ~(DeclarationModifiers.AccessibilityMask | DeclarationModifiers.Indexer | DeclarationModifiers.ReadOnly | DeclarationModifiers.Unsafe | DeclarationModifiers.Safe); 261if ((declarationModifiers & DeclarationModifiers.Private) != 0) 264declarationModifiers &= ~DeclarationModifiers.Virtual; 460internal bool LocalDeclaredReadOnly => (DeclarationModifiers & DeclarationModifiers.ReadOnly) != 0; 462internal sealed override bool HasUnsafeModifier => (DeclarationModifiers & DeclarationModifiers.Unsafe) != 0; 463internal sealed override bool HasSafeModifier => (DeclarationModifiers & DeclarationModifiers.Safe) != 0; 524private static DeclarationModifiers MakeModifiers(NamedTypeSymbol containingType, SyntaxTokenList modifiers, bool isExplicitInterfaceImplementation, 529const DeclarationModifiers defaultAccess = DeclarationModifiers.None; 532var allowedModifiers = isExplicitInterfaceImplementation ? DeclarationModifiers.None : DeclarationModifiers.AccessibilityMask; 533allowedModifiers |= DeclarationModifiers.Unsafe | DeclarationModifiers.Safe; 537allowedModifiers |= DeclarationModifiers.ReadOnly; 540var defaultInterfaceImplementationModifiers = DeclarationModifiers.None; 545defaultInterfaceImplementationModifiers = DeclarationModifiers.AccessibilityMask; 548var mods = ModifierUtils.MakeAndCheckNonTypeMemberModifiers(isForInterfaceMember: isInterface, 551if ((mods & DeclarationModifiers.Unsafe) != 0)
Symbols\Source\SourcePropertySymbol.cs (42)
70bool allowAutoPropertyAccessors = (modifiers & (DeclarationModifiers.Abstract | DeclarationModifiers.Extern | DeclarationModifiers.Indexer)) == 0 && 71(!containingType.IsInterface || hasGetAccessorImplementation || hasSetAccessorImplementation || (modifiers & DeclarationModifiers.Static) != 0) && 72((modifiers & DeclarationModifiers.Partial) == 0 || hasGetAccessorImplementation || hasSetAccessorImplementation); 109DeclarationModifiers modifiers, 371private static (DeclarationModifiers modifiers, bool hasExplicitAccessMod) MakeModifiers( 383var defaultAccess = isInterface && !isExplicitInterfaceImplementation ? DeclarationModifiers.Public : DeclarationModifiers.Private; 386var allowedModifiers = DeclarationModifiers.Partial | DeclarationModifiers.Unsafe; 387var defaultInterfaceImplementationModifiers = DeclarationModifiers.None; 391allowedModifiers |= DeclarationModifiers.AccessibilityMask; 395allowedModifiers |= DeclarationModifiers.New | 396DeclarationModifiers.Sealed | 397DeclarationModifiers.Abstract | 398DeclarationModifiers.Virtual; 403allowedModifiers |= DeclarationModifiers.Static; 410allowedModifiers |= DeclarationModifiers.Override; 414allowedModifiers |= DeclarationModifiers.Required; 421defaultAccess = DeclarationModifiers.None; 423defaultInterfaceImplementationModifiers |= DeclarationModifiers.Sealed | 424DeclarationModifiers.Abstract | 425(isIndexer ? 0 : DeclarationModifiers.Static) | 426DeclarationModifiers.Virtual | 427DeclarationModifiers.Extern | 428DeclarationModifiers.AccessibilityMask; 438allowedModifiers |= DeclarationModifiers.Abstract; 443allowedModifiers |= DeclarationModifiers.Static; 449allowedModifiers |= DeclarationModifiers.ReadOnly; 452allowedModifiers |= DeclarationModifiers.Extern | DeclarationModifiers.Safe; 455var mods = ModifierUtils.MakeAndCheckNonTypeMemberModifiers(isForInterfaceMember: isInterface, 458if ((mods & DeclarationModifiers.Partial) != 0) 466ModifierUtils.ReportUnsupportedModifiersForLanguageVersion(mods, DeclarationModifiers.Partial, location, diagnostics, availableVersion, requiredVersion); 487mods |= DeclarationModifiers.Indexer; 490if ((mods & DeclarationModifiers.Static) != 0 && (mods & DeclarationModifiers.Required) != 0) 494mods &= ~DeclarationModifiers.Required;
Symbols\Source\SourcePropertySymbolBase.cs (16)
51protected readonly DeclarationModifiers _modifiers; 90DeclarationModifiers modifiers, 108Debug.Assert((modifiers & DeclarationModifiers.Required) == 0 || this is SourcePropertySymbol); 569get { return (_modifiers & DeclarationModifiers.Abstract) != 0; } 576return (_modifiers & DeclarationModifiers.Extern) != 0; 590get { return (_modifiers & DeclarationModifiers.Static) != 0; } 602get { return (_modifiers & DeclarationModifiers.Indexer) != 0; } 607get { return (_modifiers & DeclarationModifiers.Override) != 0; } 612get { return (_modifiers & DeclarationModifiers.Sealed) != 0; } 617get { return (_modifiers & DeclarationModifiers.Virtual) != 0; } 620internal sealed override bool IsRequired => (_modifiers & DeclarationModifiers.Required) != 0; 624get { return (_modifiers & DeclarationModifiers.New) != 0; } 627internal bool HasReadOnlyModifier => (_modifiers & DeclarationModifiers.ReadOnly) != 0; 629internal bool HasUnsafeModifier => (_modifiers & DeclarationModifiers.Unsafe) != 0; 1756internal bool HasSafeModifier => (_modifiers & DeclarationModifiers.Safe) != 0; 1813internal bool IsPartial => (_modifiers & DeclarationModifiers.Partial) != 0;
Symbols\Source\SourceUserDefinedOperatorSymbolBase.cs (43)
33DeclarationModifiers declarationModifiers, 175protected static DeclarationModifiers MakeDeclarationModifiers(bool isCompoundAssignmentOrIncrementAssignment, MethodKind methodKind, SourceMemberContainerTypeSymbol containingType, BaseMethodDeclarationSyntax syntax, Location location, BindingDiagnosticBag diagnostics) 180var defaultAccess = inInterface && !isExplicitInterfaceImplementation ? DeclarationModifiers.Public : DeclarationModifiers.Private; 181var allowedModifiers = 182DeclarationModifiers.Unsafe | DeclarationModifiers.Extern | DeclarationModifiers.Safe; 186allowedModifiers |= DeclarationModifiers.Static; 191allowedModifiers |= DeclarationModifiers.AccessibilityMask; 195allowedModifiers |= DeclarationModifiers.Abstract | DeclarationModifiers.Virtual; 199allowedModifiers |= DeclarationModifiers.Sealed; 207allowedModifiers |= DeclarationModifiers.New; 213allowedModifiers |= DeclarationModifiers.Abstract | DeclarationModifiers.Virtual | DeclarationModifiers.Sealed; 216allowedModifiers |= DeclarationModifiers.Override | DeclarationModifiers.New; 223allowedModifiers |= DeclarationModifiers.Abstract; 228allowedModifiers |= DeclarationModifiers.ReadOnly; 231var result = ModifierUtils.MakeAndCheckNonTypeMemberModifiers( 237if ((result & (DeclarationModifiers.Abstract | DeclarationModifiers.Virtual | DeclarationModifiers.Sealed)) != 0) 239if ((result & DeclarationModifiers.Sealed) != 0 && 240(result & (DeclarationModifiers.Abstract | DeclarationModifiers.Virtual)) != 0) 242diagnostics.Add(ErrorCode.ERR_BadMemberFlag, location, ModifierUtils.ConvertSingleModifierToSyntaxText(DeclarationModifiers.Sealed)); 243result &= ~DeclarationModifiers.Sealed; 254if ((result & DeclarationModifiers.Abstract) != 0) 256reportModifierIfPresent(result, DeclarationModifiers.Abstract, location, diagnostics, requiredVersionArgument, availableVersionArgument); 260reportModifierIfPresent(result, DeclarationModifiers.Virtual, location, diagnostics, requiredVersionArgument, availableVersionArgument); 263reportModifierIfPresent(result, DeclarationModifiers.Sealed, location, diagnostics, requiredVersionArgument, availableVersionArgument); 266result &= ~DeclarationModifiers.Sealed; 268else if ((result & DeclarationModifiers.Static) != 0) 279result |= DeclarationModifiers.Virtual; 283result |= DeclarationModifiers.Abstract; 290if ((result & DeclarationModifiers.Abstract) != 0) 292result |= DeclarationModifiers.Sealed; 298static void reportModifierIfPresent(DeclarationModifiers result, DeclarationModifiers errorModifier, Location location, BindingDiagnosticBag diagnostics, CSharpRequiredLanguageVersion requiredVersionArgument, string availableVersionArgument)
Symbols\Source\SynthesizedSourceOrdinaryMethodSymbol.cs (1)
22protected SynthesizedSourceOrdinaryMethodSymbol(SourceMemberContainerTypeSymbol containingType, string name, Location location, CSharpSyntaxNode syntax, (DeclarationModifiers declarationModifiers, Flags flags) modifiersAndFlags)
Symbols\SymbolExtensions.cs (5)
279internal static void CheckUnsafeModifier(this Symbol symbol, DeclarationModifiers modifiers, BindingDiagnosticBag diagnostics) 284internal static void CheckUnsafeModifier(this Symbol symbol, DeclarationModifiers modifiers, Location errorLocation, BindingDiagnosticBag diagnostics) 287internal static void CheckUnsafeModifier(this Symbol symbol, DeclarationModifiers modifiers, Location errorLocation, DiagnosticBag? diagnostics) 290(modifiers & DeclarationModifiers.Unsafe) == DeclarationModifiers.Unsafe &&
Symbols\Synthesized\Records\SynthesizedPrimaryConstructor.cs (6)
37private static (DeclarationModifiers, Flags) MakeModifiersAndFlags(SourceMemberContainerTypeSymbol containingType, TypeDeclarationSyntax syntax) 41DeclarationModifiers declarationModifiers = containingType.IsAbstract ? DeclarationModifiers.Protected : DeclarationModifiers.Public; 98internal sealed override bool HasUnsafeModifier => (DeclarationModifiers & DeclarationModifiers.Unsafe) != 0; 99internal sealed override bool HasSafeModifier => (DeclarationModifiers & DeclarationModifiers.Safe) != 0;
Symbols\Synthesized\Records\SynthesizedRecordBaseEquals.cs (3)
20: base(containingType, WellKnownMemberNames.ObjectEquals, memberOffset, DeclarationModifiers.Public | DeclarationModifiers.Override | DeclarationModifiers.Sealed)
Symbols\Synthesized\Records\SynthesizedRecordClone.cs (18)
30private static DeclarationModifiers MakeDeclarationModifiers(SourceMemberContainerTypeSymbol containingType) 32DeclarationModifiers result = DeclarationModifiers.Public; 36result |= DeclarationModifiers.Override; 40result |= containingType.IsSealed ? DeclarationModifiers.None : DeclarationModifiers.Virtual; 45result &= ~DeclarationModifiers.Virtual; 46result |= DeclarationModifiers.Abstract; 55static bool modifiersAreValid(DeclarationModifiers modifiers) 57if ((modifiers & DeclarationModifiers.AccessibilityMask) != DeclarationModifiers.Public) 62modifiers &= ~DeclarationModifiers.AccessibilityMask; 66case DeclarationModifiers.None: 68case DeclarationModifiers.Abstract: 70case DeclarationModifiers.Override: 72case DeclarationModifiers.Abstract | DeclarationModifiers.Override: 74case DeclarationModifiers.Virtual:
Symbols\Synthesized\Records\SynthesizedRecordDeconstruct.cs (2)
24DeclarationModifiers.Public | (IsReadOnly(containingType, positionalMembers) ? DeclarationModifiers.ReadOnly : 0))
Symbols\Synthesized\Records\SynthesizedRecordEqualityContractProperty.cs (6)
30(true, true) => DeclarationModifiers.Private, 31(false, true) => DeclarationModifiers.Protected | DeclarationModifiers.Virtual, 32(_, false) => DeclarationModifiers.Protected | DeclarationModifiers.Override 147DeclarationModifiers propertyModifiers,
Symbols\Synthesized\Records\SynthesizedRecordEqualityOperatorBase.cs (2)
42DeclarationModifiers.Public | DeclarationModifiers.Static, hasAnyBody: true, isExpressionBodied: false, isIterator: false, isNullableAnalysisEnabled: false, diagnostics)
Symbols\Synthesized\Records\SynthesizedRecordEquals.cs (3)
23DeclarationModifiers.Public | 24(containingType.IsSealed ? 0 : DeclarationModifiers.Virtual) | 25(containingType.IsRecordStruct ? DeclarationModifiers.ReadOnly : 0))
Symbols\Synthesized\Records\SynthesizedRecordObjectMethod.cs (3)
16DeclarationModifiers.Public | DeclarationModifiers.Override | (isReadOnly ? DeclarationModifiers.ReadOnly : 0))
Symbols\Synthesized\Records\SynthesizedRecordOrdinaryMethod.cs (1)
14protected SynthesizedRecordOrdinaryMethod(SourceMemberContainerTypeSymbol containingType, string name, int memberOffset, DeclarationModifiers declarationModifiers)
Symbols\Synthesized\Records\SynthesizedRecordPrintMembers.cs (18)
35private static DeclarationModifiers MakeDeclarationModifiers(SourceMemberContainerTypeSymbol containingType, IEnumerable<Symbol> userDefinedMembers) 37var result = (containingType.IsRecordStruct || (containingType.BaseTypeNoUseSiteDiagnostics.IsObjectType() && containingType.IsSealed)) ? 38DeclarationModifiers.Private : 39DeclarationModifiers.Protected; 43result |= DeclarationModifiers.Override; 47result |= containingType.IsSealed ? DeclarationModifiers.None : DeclarationModifiers.Virtual; 55result |= DeclarationModifiers.ReadOnly; 61bool modifiersAreValid(DeclarationModifiers modifiers) 65return modifiers == DeclarationModifiers.Private; 68if ((modifiers & DeclarationModifiers.AccessibilityMask) != DeclarationModifiers.Private && 69(modifiers & DeclarationModifiers.AccessibilityMask) != DeclarationModifiers.Protected) 74modifiers &= ~DeclarationModifiers.AccessibilityMask; 78case DeclarationModifiers.None: 79case DeclarationModifiers.Override: 80case DeclarationModifiers.Virtual:
Symbols\Synthesized\Records\SynthesizedRecordPropertySymbol.cs (3)
32modifiers: DeclarationModifiers.Public | (isOverride ? DeclarationModifiers.Override : DeclarationModifiers.None),
Symbols\Synthesized\SynthesizedBackingFieldSymbol.cs (6)
27protected override DeclarationModifiers Modifiers { get; } 38Modifiers = DeclarationModifiers.Private | 39(isReadOnly ? DeclarationModifiers.ReadOnly : DeclarationModifiers.None) | 40(isStatic ? DeclarationModifiers.Static : DeclarationModifiers.None);
Symbols\Synthesized\SynthesizedEmbeddedMemorySafetyRulesAttributeSymbol.cs (1)
47accessibility: DeclarationModifiers.Private,
Symbols\Synthesized\SynthesizedEmbeddedNativeIntegerAttributeSymbol.cs (1)
42DeclarationModifiers.Public,
Symbols\Synthesized\SynthesizedEmbeddedNullableAttributeSymbol.cs (1)
46DeclarationModifiers.Public,
Symbols\Synthesized\SynthesizedEmbeddedNullableContextAttributeSymbol.cs (1)
34DeclarationModifiers.Public,
Symbols\Synthesized\SynthesizedEmbeddedNullablePublicOnlyAttributeSymbol.cs (1)
34DeclarationModifiers.Public,
Symbols\Synthesized\SynthesizedEmbeddedRefSafetyRulesAttributeSymbol.cs (1)
32DeclarationModifiers.Public,
Symbols\Synthesized\SynthesizedEnumValueFieldSymbol.cs (1)
20: base(containingEnum, WellKnownMemberNames.EnumBackingFieldName, DeclarationModifiers.Public, isReadOnly: false, isStatic: false)
Symbols\Synthesized\SynthesizedFieldSymbol.cs (2)
27DeclarationModifiers accessibility = DeclarationModifiers.Private,
Symbols\Synthesized\SynthesizedFieldSymbolBase.cs (11)
22private readonly DeclarationModifiers _modifiers; 27DeclarationModifiers accessibility, 33Debug.Assert((accessibility & DeclarationModifiers.AccessibilityMask) != 0); 34Debug.Assert((accessibility & ~DeclarationModifiers.AccessibilityMask) == 0); 38_modifiers = (accessibility & DeclarationModifiers.AccessibilityMask) | 39(isReadOnly ? DeclarationModifiers.ReadOnly : DeclarationModifiers.None) | 40(isStatic ? DeclarationModifiers.Static : DeclarationModifiers.None); 109get { return (_modifiers & DeclarationModifiers.ReadOnly) != 0; } 180get { return (_modifiers & DeclarationModifiers.Static) != 0; }
Symbols\Synthesized\SynthesizedHotReloadExceptionSymbol.cs (2)
50new SynthesizedFieldSymbol(this, intType, CodeFieldName, DeclarationModifiers.Public, isReadOnly: true, isStatic: false), 51new SynthesizedFieldSymbol(this, actionOfTType.Construct(exceptionType), CreatedActionFieldName, DeclarationModifiers.Private, isReadOnly: false, isStatic: true)
Symbols\Synthesized\SynthesizedLambdaCacheFieldSymbol.cs (1)
20: base(containingType, name, DeclarationModifiers.Public, isReadOnly: isReadOnly, isStatic: isStatic)
Symbols\Synthesized\SynthesizedSimpleProgramEntryPointSymbol.cs (8)
62private static (DeclarationModifiers, Flags) MakeModifiersAndFlags(SourceMemberContainerTypeSymbol containingType, SingleTypeDeclaration declaration) 67DeclarationModifiers declarationModifiers = DeclarationModifiers.Static | DeclarationModifiers.Private | (hasAwait ? DeclarationModifiers.Async : DeclarationModifiers.None); 152internal sealed override bool HasUnsafeModifier => (DeclarationModifiers & DeclarationModifiers.Unsafe) != 0; 153internal sealed override bool HasSafeModifier => (DeclarationModifiers & DeclarationModifiers.Safe) != 0;
Symbols\Synthesized\SynthesizedUnionValuePropertySymbol.cs (1)
27modifiers: DeclarationModifiers.Public,
Symbols\Tuples\TupleErrorFieldSymbol.cs (1)
48: base(container, name, DeclarationModifiers.Public, isReadOnly: false, isStatic: false)