diff options
Diffstat (limited to 'src/mscorlib/shared/System/Reflection/FieldAttributes.cs')
-rw-r--r-- | src/mscorlib/shared/System/Reflection/FieldAttributes.cs | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/src/mscorlib/shared/System/Reflection/FieldAttributes.cs b/src/mscorlib/shared/System/Reflection/FieldAttributes.cs new file mode 100644 index 0000000000..048d0e7031 --- /dev/null +++ b/src/mscorlib/shared/System/Reflection/FieldAttributes.cs @@ -0,0 +1,40 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +namespace System.Reflection +{ + // This Enum matchs the CorFieldAttr defined in CorHdr.h + [Flags] + public enum FieldAttributes + { + // member access mask - Use this mask to retrieve accessibility information. + FieldAccessMask = 0x0007, + PrivateScope = 0x0000, // Member not referenceable. + Private = 0x0001, // Accessible only by the parent type. + FamANDAssem = 0x0002, // Accessible by sub-types only in this Assembly. + Assembly = 0x0003, // Accessibly by anyone in the Assembly. + Family = 0x0004, // Accessible only by type and sub-types. + FamORAssem = 0x0005, // Accessibly by sub-types anywhere, plus anyone in assembly. + Public = 0x0006, // Accessibly by anyone who has visibility to this scope. + // end member access mask + + // field contract attributes. + Static = 0x0010, // Defined on type, else per instance. + InitOnly = 0x0020, // Field may only be initialized, not written to after init. + Literal = 0x0040, // Value is compile time constant. + NotSerialized = 0x0080, // Field does not have to be serialized when type is remoted. + + SpecialName = 0x0200, // field is special. Name describes how. + + // interop attributes + PinvokeImpl = 0x2000, // Implementation is forwarded through pinvoke. + + RTSpecialName = 0x0400, // Runtime(metadata internal APIs) should check name encoding. + HasFieldMarshal = 0x1000, // Field has marshalling information. + HasDefault = 0x8000, // Field has default. + HasFieldRVA = 0x0100, // Field has RVA. + + ReservedMask = 0x9500, + } +} |