forked from DerivcoIpswich/dsharp
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathModifiers.cs
More file actions
55 lines (49 loc) · 2 KB
/
Copy pathModifiers.cs
File metadata and controls
55 lines (49 loc) · 2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
// Modifiers.cs
// Script#/Core/Compiler
// This source code is subject to terms and conditions of the Apache License, Version 2.0.
//
using System;
namespace DSharp.Compiler.CodeModel
{
/// <summary>
/// Modifiers for types and their _members.
/// </summary>
[Flags]
internal enum Modifiers
{
None = 0x0000,
Abstract = 0x0001,
Sealed = 0x0002,
Public = 0x0004,
Internal = 0x0008,
Private = 0x0010,
Protected = 0x0020,
AccessMask = Public | Internal | Protected | Private,
New = 0x0040,
Virtual = 0x0080,
Static = 0x0100,
Readonly = 0x0200,
Extern = 0x0400,
Override = 0x0800,
Unsafe = 0x1000,
Volatile = 0x2000,
Partial = 0x4000,
// valid flags by member type
ClassModifiers = New | AccessMask | Abstract | Sealed | Static | Unsafe | Partial,
ConstantModifiers = New | AccessMask | Unsafe,
FieldModifiers = New | AccessMask | Static | Readonly | Unsafe | Volatile,
MethodModifiers = New | AccessMask | Static | Virtual | Sealed | Override | Abstract | Extern | Unsafe,
PropertyModifiers = New | AccessMask | Static | Virtual | Sealed | Override | Abstract | Extern | Unsafe,
EventModifiers = New | AccessMask | Static | Virtual | Sealed | Override | Abstract | Extern | Unsafe,
IndexerModifiers = New | AccessMask | Static | Virtual | Sealed | Override | Abstract | Extern | Unsafe,
OperatorModifiers = Public | Static | Extern | Unsafe,
ConstructorModifiers = AccessMask | Extern | Unsafe,
StaticConstructorModifiers = Static | Extern | Unsafe,
DestructorModifiers = Extern | Unsafe,
StructModifiers = New | AccessMask | Unsafe | Partial,
InterfaceModifiers = New | AccessMask | Unsafe | Partial,
EnumModifiers = New | AccessMask,
DelegateModifiers = New | AccessMask | Unsafe,
PartialModifiers = AccessMask | Abstract | Sealed | Static
}
}