1
1
import sys
2
- from typing import Literal
3
-
4
- SF_APPEND : Literal [ 0x00040000 ]
5
- SF_ARCHIVED : Literal [ 0x00010000 ]
6
- SF_IMMUTABLE : Literal [ 0x00020000 ]
7
- SF_NOUNLINK : Literal [ 0x00100000 ]
8
- SF_SNAPSHOT : Literal [ 0x00200000 ]
9
-
10
- ST_MODE : Literal [ 0 ]
11
- ST_INO : Literal [ 1 ]
12
- ST_DEV : Literal [ 2 ]
13
- ST_NLINK : Literal [ 3 ]
14
- ST_UID : Literal [ 4 ]
15
- ST_GID : Literal [ 5 ]
16
- ST_SIZE : Literal [ 6 ]
17
- ST_ATIME : Literal [ 7 ]
18
- ST_MTIME : Literal [ 8 ]
19
- ST_CTIME : Literal [ 9 ]
20
-
21
- S_IFIFO : Literal [ 0o010000 ]
22
- S_IFLNK : Literal [ 0o120000 ]
23
- S_IFREG : Literal [ 0o100000 ]
24
- S_IFSOCK : Literal [ 0o140000 ]
25
- S_IFBLK : Literal [ 0o060000 ]
26
- S_IFCHR : Literal [ 0o020000 ]
27
- S_IFDIR : Literal [ 0o040000 ]
2
+ from typing import Final
3
+
4
+ SF_APPEND : Final = 0x00040000
5
+ SF_ARCHIVED : Final = 0x00010000
6
+ SF_IMMUTABLE : Final = 0x00020000
7
+ SF_NOUNLINK : Final = 0x00100000
8
+ SF_SNAPSHOT : Final = 0x00200000
9
+
10
+ ST_MODE : Final = 0
11
+ ST_INO : Final = 1
12
+ ST_DEV : Final = 2
13
+ ST_NLINK : Final = 3
14
+ ST_UID : Final = 4
15
+ ST_GID : Final = 5
16
+ ST_SIZE : Final = 6
17
+ ST_ATIME : Final = 7
18
+ ST_MTIME : Final = 8
19
+ ST_CTIME : Final = 9
20
+
21
+ S_IFIFO : Final = 0o010000
22
+ S_IFLNK : Final = 0o120000
23
+ S_IFREG : Final = 0o100000
24
+ S_IFSOCK : Final = 0o140000
25
+ S_IFBLK : Final = 0o060000
26
+ S_IFCHR : Final = 0o020000
27
+ S_IFDIR : Final = 0o040000
28
28
29
29
# These are 0 on systems that don't support the specific kind of file.
30
30
# Example: Linux doesn't support door files, so S_IFDOOR is 0 on linux.
31
31
S_IFDOOR : int
32
32
S_IFPORT : int
33
33
S_IFWHT : int
34
34
35
- S_ISUID : Literal [ 0o4000 ]
36
- S_ISGID : Literal [ 0o2000 ]
37
- S_ISVTX : Literal [ 0o1000 ]
38
-
39
- S_IRWXU : Literal [ 0o0700 ]
40
- S_IRUSR : Literal [ 0o0400 ]
41
- S_IWUSR : Literal [ 0o0200 ]
42
- S_IXUSR : Literal [ 0o0100 ]
43
-
44
- S_IRWXG : Literal [ 0o0070 ]
45
- S_IRGRP : Literal [ 0o0040 ]
46
- S_IWGRP : Literal [ 0o0020 ]
47
- S_IXGRP : Literal [ 0o0010 ]
48
-
49
- S_IRWXO : Literal [ 0o0007 ]
50
- S_IROTH : Literal [ 0o0004 ]
51
- S_IWOTH : Literal [ 0o0002 ]
52
- S_IXOTH : Literal [ 0o0001 ]
53
-
54
- S_ENFMT : Literal [ 0o2000 ]
55
- S_IREAD : Literal [ 0o0400 ]
56
- S_IWRITE : Literal [ 0o0200 ]
57
- S_IEXEC : Literal [ 0o0100 ]
58
-
59
- UF_APPEND : Literal [ 0x00000004 ]
60
- UF_COMPRESSED : Literal [ 0x00000020 ] # OS X 10.6+ only
61
- UF_HIDDEN : Literal [ 0x00008000 ] # OX X 10.5+ only
62
- UF_IMMUTABLE : Literal [ 0x00000002 ]
63
- UF_NODUMP : Literal [ 0x00000001 ]
64
- UF_NOUNLINK : Literal [ 0x00000010 ]
65
- UF_OPAQUE : Literal [ 0x00000008 ]
35
+ S_ISUID : Final = 0o4000
36
+ S_ISGID : Final = 0o2000
37
+ S_ISVTX : Final = 0o1000
38
+
39
+ S_IRWXU : Final = 0o0700
40
+ S_IRUSR : Final = 0o0400
41
+ S_IWUSR : Final = 0o0200
42
+ S_IXUSR : Final = 0o0100
43
+
44
+ S_IRWXG : Final = 0o0070
45
+ S_IRGRP : Final = 0o0040
46
+ S_IWGRP : Final = 0o0020
47
+ S_IXGRP : Final = 0o0010
48
+
49
+ S_IRWXO : Final = 0o0007
50
+ S_IROTH : Final = 0o0004
51
+ S_IWOTH : Final = 0o0002
52
+ S_IXOTH : Final = 0o0001
53
+
54
+ S_ENFMT : Final = 0o2000
55
+ S_IREAD : Final = 0o0400
56
+ S_IWRITE : Final = 0o0200
57
+ S_IEXEC : Final = 0o0100
58
+
59
+ UF_APPEND : Final = 0x00000004
60
+ UF_COMPRESSED : Final = 0x00000020 # OS X 10.6+ only
61
+ UF_HIDDEN : Final = 0x00008000 # OX X 10.5+ only
62
+ UF_IMMUTABLE : Final = 0x00000002
63
+ UF_NODUMP : Final = 0x00000001
64
+ UF_NOUNLINK : Final = 0x00000010
65
+ UF_OPAQUE : Final = 0x00000008
66
66
67
67
def S_IMODE (mode : int , / ) -> int : ...
68
68
def S_IFMT (mode : int , / ) -> int : ...
@@ -84,34 +84,35 @@ if sys.platform == "win32":
84
84
IO_REPARSE_TAG_APPEXECLINK : int
85
85
86
86
if sys .platform == "win32" :
87
- FILE_ATTRIBUTE_ARCHIVE : Literal [ 32 ]
88
- FILE_ATTRIBUTE_COMPRESSED : Literal [ 2048 ]
89
- FILE_ATTRIBUTE_DEVICE : Literal [ 64 ]
90
- FILE_ATTRIBUTE_DIRECTORY : Literal [ 16 ]
91
- FILE_ATTRIBUTE_ENCRYPTED : Literal [ 16384 ]
92
- FILE_ATTRIBUTE_HIDDEN : Literal [ 2 ]
93
- FILE_ATTRIBUTE_INTEGRITY_STREAM : Literal [ 32768 ]
94
- FILE_ATTRIBUTE_NORMAL : Literal [ 128 ]
95
- FILE_ATTRIBUTE_NOT_CONTENT_INDEXED : Literal [ 8192 ]
96
- FILE_ATTRIBUTE_NO_SCRUB_DATA : Literal [ 131072 ]
97
- FILE_ATTRIBUTE_OFFLINE : Literal [ 4096 ]
98
- FILE_ATTRIBUTE_READONLY : Literal [ 1 ]
99
- FILE_ATTRIBUTE_REPARSE_POINT : Literal [ 1024 ]
100
- FILE_ATTRIBUTE_SPARSE_FILE : Literal [ 512 ]
101
- FILE_ATTRIBUTE_SYSTEM : Literal [ 4 ]
102
- FILE_ATTRIBUTE_TEMPORARY : Literal [ 256 ]
103
- FILE_ATTRIBUTE_VIRTUAL : Literal [ 65536 ]
87
+ FILE_ATTRIBUTE_ARCHIVE : Final = 32
88
+ FILE_ATTRIBUTE_COMPRESSED : Final = 2048
89
+ FILE_ATTRIBUTE_DEVICE : Final = 64
90
+ FILE_ATTRIBUTE_DIRECTORY : Final = 16
91
+ FILE_ATTRIBUTE_ENCRYPTED : Final = 16384
92
+ FILE_ATTRIBUTE_HIDDEN : Final = 2
93
+ FILE_ATTRIBUTE_INTEGRITY_STREAM : Final = 32768
94
+ FILE_ATTRIBUTE_NORMAL : Final = 128
95
+ FILE_ATTRIBUTE_NOT_CONTENT_INDEXED : Final = 8192
96
+ FILE_ATTRIBUTE_NO_SCRUB_DATA : Final = 131072
97
+ FILE_ATTRIBUTE_OFFLINE : Final = 4096
98
+ FILE_ATTRIBUTE_READONLY : Final = 1
99
+ FILE_ATTRIBUTE_REPARSE_POINT : Final = 1024
100
+ FILE_ATTRIBUTE_SPARSE_FILE : Final = 512
101
+ FILE_ATTRIBUTE_SYSTEM : Final = 4
102
+ FILE_ATTRIBUTE_TEMPORARY : Final = 256
103
+ FILE_ATTRIBUTE_VIRTUAL : Final = 65536
104
104
105
105
if sys .version_info >= (3 , 13 ):
106
- SF_SETTABLE : Literal [0x3FFF0000 ]
106
+ # Varies by platform.
107
+ SF_SETTABLE : Final [int ]
107
108
# https://github.com/python/cpython/issues/114081#issuecomment-2119017790
108
109
# SF_RESTRICTED: Literal[0x00080000]
109
- SF_FIRMLINK : Literal [ 0x00800000 ]
110
- SF_DATALESS : Literal [ 0x40000000 ]
110
+ SF_FIRMLINK : Final = 0x00800000
111
+ SF_DATALESS : Final = 0x40000000
111
112
112
- SF_SUPPORTED : Literal [ 0x9F0000 ]
113
- SF_SYNTHETIC : Literal [ 0xC0000000 ]
113
+ SF_SUPPORTED : Final = 0x9F0000
114
+ SF_SYNTHETIC : Final = 0xC0000000
114
115
115
- UF_TRACKED : Literal [ 0x00000040 ]
116
- UF_DATAVAULT : Literal [ 0x00000080 ]
117
- UF_SETTABLE : Literal [ 0x0000FFFF ]
116
+ UF_TRACKED : Final = 0x00000040
117
+ UF_DATAVAULT : Final = 0x00000080
118
+ UF_SETTABLE : Final = 0x0000FFFF
0 commit comments