854 references to DeclarationModifiers
Microsoft.CodeAnalysis.CSharp (854)
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, 787var modifiers = node.Modifiers.ToDeclarationModifiers(isForTypeDeclaration: true, diagnostics: diagnostics); 852var modifiers = node.Modifiers.ToDeclarationModifiers(isForTypeDeclaration: true, diagnostics: diagnostics); 885var modifiers = node.Modifiers.ToDeclarationModifiers(isForTypeDeclaration: true, diagnostics: 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 (46)
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; 1371var newMod = GetModifierExcludingScoped(this.CurrentToken); 1373Debug.Assert(newMod != DeclarationModifiers.Scoped); 1374if (newMod == DeclarationModifiers.None) 1393case DeclarationModifiers.Partial: 1407(IsPossibleStartOfTypeDeclaration(nextToken.Kind) && GetModifierExcludingScoped(nextToken) != DeclarationModifiers.None)) 1419case DeclarationModifiers.Ref: 1444case DeclarationModifiers.File: 1450case DeclarationModifiers.Closed: 1456case DeclarationModifiers.Async: 1465case DeclarationModifiers.Required: 1471case DeclarationModifiers.Safe: 1548Debug.Assert(this.CurrentToken.Kind == SyntaxKind.IdentifierToken && GetModifierExcludingScoped(this.CurrentToken) != DeclarationModifiers.None); 1661return !SyntaxFacts.IsContextualKeyword(nextToken.ContextualKind) && GetModifierExcludingScoped(nextToken) != DeclarationModifiers.None; 2205if (GetModifierExcludingScoped(this.CurrentToken) != DeclarationModifiers.None) 3041if (GetModifierExcludingScoped(this.CurrentToken) != DeclarationModifiers.None && 4491if (GetModifierExcludingScoped(this.CurrentToken) == DeclarationModifiers.None) 4497while (GetModifierExcludingScoped(this.PeekToken(peekIndex)) != DeclarationModifiers.None) 9029DeclarationModifiers modifier = GetModifierExcludingScoped(nextToken); 9030if (modifier == DeclarationModifiers.Partial) 9044else 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 (180)
15internal static DeclarationModifiers MakeAndCheckNonTypeMemberModifiers( 19DeclarationModifiers defaultAccess, 20DeclarationModifiers allowedModifiers, 26var result = modifiers.ToDeclarationModifiers(isForTypeDeclaration: false, diagnostics.DiagnosticBag ?? new DiagnosticBag(), isOrdinaryMethod: isOrdinaryMethod); 33hasExplicitAccessModifier = (result & DeclarationModifiers.AccessibilityMask) != 0; 40internal static DeclarationModifiers CheckModifiers( 43DeclarationModifiers modifiers, 44DeclarationModifiers allowedModifiers, 53DeclarationModifiers reportStaticNotVirtualForModifiers = DeclarationModifiers.None; 57Debug.Assert((allowedModifiers & (DeclarationModifiers.Override | DeclarationModifiers.Virtual)) == 0); 59else if ((modifiers & allowedModifiers & DeclarationModifiers.Static) != 0) 63reportStaticNotVirtualForModifiers = allowedModifiers & DeclarationModifiers.Override; 67reportStaticNotVirtualForModifiers = allowedModifiers & (DeclarationModifiers.Abstract | DeclarationModifiers.Override | DeclarationModifiers.Virtual); 73DeclarationModifiers errorModifiers = modifiers & ~allowedModifiers; 74DeclarationModifiers result = modifiers & allowedModifiers; 76while (errorModifiers != DeclarationModifiers.None) 78DeclarationModifiers oneError = errorModifiers & ~(errorModifiers - 1); 79Debug.Assert(oneError != DeclarationModifiers.None); 84case DeclarationModifiers.Partial: 89case DeclarationModifiers.Abstract: 90case DeclarationModifiers.Override: 91case DeclarationModifiers.Virtual: 109checkFeature(DeclarationModifiers.PrivateProtected, MessageID.IDS_FeaturePrivateProtected) | 110checkFeature(DeclarationModifiers.Required, MessageID.IDS_FeatureRequiredMembers) | 111checkFeature(DeclarationModifiers.File, MessageID.IDS_FeatureFileTypes) | 112checkFeature(DeclarationModifiers.Closed, MessageID.IDS_FeatureClosedClasses) | 113checkFeature(DeclarationModifiers.Async, MessageID.IDS_FeatureAsync); 115if ((result & DeclarationModifiers.Safe) != 0) 122if ((result & DeclarationModifiers.Unsafe) != 0) 125result &= ~DeclarationModifiers.Safe; 132bool checkFeature(DeclarationModifiers modifier, MessageID featureID) 164DeclarationModifiers modifiers, 165DeclarationModifiers defaultInterfaceImplementationModifiers, 174if ((modifiers & defaultInterfaceImplementationModifiers & DeclarationModifiers.Static) != 0 && 175(modifiers & defaultInterfaceImplementationModifiers & (DeclarationModifiers.Sealed | DeclarationModifiers.Abstract | DeclarationModifiers.Virtual)) != 0) 177var reportModifiers = DeclarationModifiers.Sealed | DeclarationModifiers.Abstract | DeclarationModifiers.Virtual; 178if ((modifiers & defaultInterfaceImplementationModifiers & DeclarationModifiers.Sealed) != 0 && 179(modifiers & defaultInterfaceImplementationModifiers & (DeclarationModifiers.Abstract | DeclarationModifiers.Virtual)) != 0) 181diagnostics.Add(ErrorCode.ERR_BadMemberFlag, errorLocation, ConvertSingleModifierToSyntaxText(DeclarationModifiers.Sealed)); 182reportModifiers &= ~DeclarationModifiers.Sealed; 196if ((modifiers & defaultInterfaceImplementationModifiers & DeclarationModifiers.Static) != 0) 212internal static void ReportUnsupportedModifiersForLanguageVersion(DeclarationModifiers modifiers, DeclarationModifiers unsupportedModifiers, Location errorLocation, BindingDiagnosticBag diagnostics, LanguageVersion availableVersion, LanguageVersion requiredVersion) 214DeclarationModifiers errorModifiers = modifiers & unsupportedModifiers; 217while (errorModifiers != DeclarationModifiers.None) 219DeclarationModifiers oneError = errorModifiers & ~(errorModifiers - 1); 220Debug.Assert(oneError != DeclarationModifiers.None); 229internal static void CheckFeatureAvailabilityForStaticAbstractMembersInInterfacesIfNeeded(DeclarationModifiers mods, bool isExplicitInterfaceImplementation, Location location, BindingDiagnosticBag diagnostics) 231if (isExplicitInterfaceImplementation && (mods & DeclarationModifiers.Static) != 0) 239ModifierUtils.ReportUnsupportedModifiersForLanguageVersion(mods, DeclarationModifiers.Static, location, diagnostics, availableVersion, requiredVersion); 254DeclarationModifiers.Partial, 255DeclarationModifiers.Partial, 264internal static DeclarationModifiers AdjustModifiersForAnInterfaceMember(DeclarationModifiers mods, bool hasBody, bool isExplicitInterfaceImplementation, bool forMethod) 268bool notPartialOrNewPartialBehavior = (mods & DeclarationModifiers.Partial) == 0 || !forMethod; 270if ((mods & DeclarationModifiers.AccessibilityMask) == 0) 274mods |= DeclarationModifiers.Public; 278mods |= DeclarationModifiers.Private; 284if ((mods & DeclarationModifiers.Abstract) != 0) 286mods |= DeclarationModifiers.Sealed; 289else if ((mods & DeclarationModifiers.Static) != 0) 291mods &= ~DeclarationModifiers.Sealed; 293else if ((mods & (DeclarationModifiers.Private | DeclarationModifiers.Virtual | DeclarationModifiers.Abstract)) == 0 && notPartialOrNewPartialBehavior) 297if (hasBody || (mods & (DeclarationModifiers.Extern | DeclarationModifiers.Partial | DeclarationModifiers.Sealed)) != 0) 299if ((mods & DeclarationModifiers.Sealed) == 0) 301mods |= DeclarationModifiers.Virtual; 305mods &= ~DeclarationModifiers.Sealed; 310mods |= DeclarationModifiers.Abstract; 317internal static string ConvertSingleModifierToSyntaxText(DeclarationModifiers modifier) 321case DeclarationModifiers.Abstract: 323case DeclarationModifiers.Sealed: 325case DeclarationModifiers.Static: 327case DeclarationModifiers.New: 329case DeclarationModifiers.Public: 331case DeclarationModifiers.Protected: 333case DeclarationModifiers.Internal: 335case DeclarationModifiers.ProtectedInternal: 337case DeclarationModifiers.Private: 339case DeclarationModifiers.PrivateProtected: 341case DeclarationModifiers.ReadOnly: 343case DeclarationModifiers.Const: 345case DeclarationModifiers.Volatile: 347case DeclarationModifiers.Extern: 349case DeclarationModifiers.Partial: 351case DeclarationModifiers.Unsafe: 353case DeclarationModifiers.Safe: 355case DeclarationModifiers.Fixed: 357case DeclarationModifiers.Virtual: 359case DeclarationModifiers.Override: 361case DeclarationModifiers.Async: 363case DeclarationModifiers.Ref: 365case DeclarationModifiers.Required: 367case DeclarationModifiers.Scoped: 369case DeclarationModifiers.File: 371case DeclarationModifiers.Closed: 378private static DeclarationModifiers ToDeclarationModifier(SyntaxKind kind) 383return DeclarationModifiers.Abstract; 385return DeclarationModifiers.Async; 387return DeclarationModifiers.Sealed; 389return DeclarationModifiers.Static; 391return DeclarationModifiers.New; 393return DeclarationModifiers.Public; 395return DeclarationModifiers.Protected; 397return DeclarationModifiers.Internal; 399return DeclarationModifiers.Private; 401return DeclarationModifiers.Extern; 403return DeclarationModifiers.ReadOnly; 405return DeclarationModifiers.Partial; 407return DeclarationModifiers.Unsafe; 409return DeclarationModifiers.Safe; 411return DeclarationModifiers.Virtual; 413return DeclarationModifiers.Override; 415return DeclarationModifiers.Const; 417return DeclarationModifiers.Fixed; 419return DeclarationModifiers.Volatile; 421return DeclarationModifiers.Ref; 423return DeclarationModifiers.Required; 425return DeclarationModifiers.Scoped; 427return DeclarationModifiers.File; 429return DeclarationModifiers.Closed; 442private static DeclarationModifiers GetDeclarationModifiersAndCheckForDuplicateModifiers( 446var allModifiers = DeclarationModifiers.None; 451var thisModifier = ToDeclarationModifier(modifierToken.ContextualKind()); 465public static DeclarationModifiers ToDeclarationModifiers( 468var result = GetDeclarationModifiersAndCheckForDuplicateModifiers(modifiers, diagnostics); 469if ((result & DeclarationModifiers.Partial) == DeclarationModifiers.Partial) 490switch (result & DeclarationModifiers.AccessibilityMask) 492case DeclarationModifiers.Protected | DeclarationModifiers.Internal: 494result &= ~DeclarationModifiers.AccessibilityMask; 495result |= DeclarationModifiers.ProtectedInternal; 498case DeclarationModifiers.Private | DeclarationModifiers.Protected: 500result &= ~DeclarationModifiers.AccessibilityMask; 501result |= DeclarationModifiers.PrivateProtected; 510DeclarationModifiers modifierKind, 511DeclarationModifiers allModifiers, 528internal static bool CheckAccessibility(DeclarationModifiers modifiers, Symbol symbol, bool isExplicitInterfaceImplementation, BindingDiagnosticBag diagnostics, Location errorLocation) 538(symbol.Kind != SymbolKind.Method || (modifiers & DeclarationModifiers.Partial) == 0) && 539(modifiers & DeclarationModifiers.Static) == 0) 541switch (modifiers & DeclarationModifiers.AccessibilityMask) 543case DeclarationModifiers.Protected: 544case DeclarationModifiers.ProtectedInternal: 545case DeclarationModifiers.PrivateProtected: 556if ((modifiers & DeclarationModifiers.Required) != 0) 570case FieldSymbol when (modifiers & DeclarationModifiers.ReadOnly) != 0: 586internal static Accessibility EffectiveAccessibility(DeclarationModifiers modifiers) 588switch (modifiers & DeclarationModifiers.AccessibilityMask) 590case DeclarationModifiers.None: 592case DeclarationModifiers.Private: 594case DeclarationModifiers.Protected: 596case DeclarationModifiers.Internal: 598case DeclarationModifiers.Public: 600case DeclarationModifiers.ProtectedInternal: 602case DeclarationModifiers.PrivateProtected: 612internal static bool IsValidAccessibility(DeclarationModifiers modifiers) 614switch (modifiers & DeclarationModifiers.AccessibilityMask) 616case DeclarationModifiers.None: 617case DeclarationModifiers.Private: 618case DeclarationModifiers.Protected: 619case DeclarationModifiers.Internal: 620case DeclarationModifiers.Public: 621case DeclarationModifiers.ProtectedInternal: 622case 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(isOrdinaryMethod: false, 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(isOrdinaryMethod: false, 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(isOrdinaryMethod: false, 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(isOrdinaryMethod: false, 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(isOrdinaryMethod: false, 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)