Skip to content

Commit 650c1e6

Browse files
authored
Merge pull request #35228 from compnerd/computation
WinSDK: use computed properties more aggressively
2 parents 97c7376 + b228e17 commit 650c1e6

File tree

1 file changed

+102
-43
lines changed

1 file changed

+102
-43
lines changed

stdlib/public/Windows/WinSDK.swift

Lines changed: 102 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -13,47 +13,80 @@
1313
@_exported import WinSDK // Clang module
1414

1515
// WinBase.h
16-
public let HANDLE_FLAG_INHERIT: DWORD = 0x00000001
16+
public var HANDLE_FLAG_INHERIT: DWORD {
17+
0x00000001
18+
}
1719

1820
// WinBase.h
19-
public let STARTF_USESTDHANDLES: DWORD = 0x00000100
21+
public var STARTF_USESTDHANDLES: DWORD {
22+
0x00000100
23+
}
2024

2125
// WinBase.h
22-
public let INFINITE: DWORD = DWORD(bitPattern: -1)
26+
public var INFINITE: DWORD {
27+
DWORD(bitPattern: -1)
28+
}
2329

2430
// WinBase.h
25-
public let WAIT_OBJECT_0: DWORD = 0
31+
public var WAIT_OBJECT_0: DWORD {
32+
0
33+
}
2634

2735
// WinBase.h
28-
public let STD_INPUT_HANDLE: DWORD = DWORD(bitPattern: -10)
29-
public let STD_OUTPUT_HANDLE: DWORD = DWORD(bitPattern: -11)
30-
public let STD_ERROR_HANDLE: DWORD = DWORD(bitPattern: -12)
36+
public var STD_INPUT_HANDLE: DWORD {
37+
DWORD(bitPattern: -10)
38+
}
39+
public var STD_OUTPUT_HANDLE: DWORD {
40+
DWORD(bitPattern: -11)
41+
}
42+
public var STD_ERROR_HANDLE: DWORD {
43+
DWORD(bitPattern: -12)
44+
}
3145

3246
// handleapi.h
33-
public let INVALID_HANDLE_VALUE: HANDLE = HANDLE(bitPattern: -1)!
47+
public var INVALID_HANDLE_VALUE: HANDLE {
48+
HANDLE(bitPattern: -1)!
49+
}
3450

3551
// shellapi.h
36-
public let FOF_NO_UI: FILEOP_FLAGS =
37-
FILEOP_FLAGS(FOF_SILENT | FOF_NOCONFIRMATION | FOF_NOERRORUI | FOF_NOCONFIRMMKDIR)
52+
public var FOF_NO_UI: FILEOP_FLAGS {
53+
FILEOP_FLAGS(FOF_SILENT | FOF_NOCONFIRMATION | FOF_NOERRORUI | FOF_NOCONFIRMMKDIR)
54+
}
3855

3956
// winioctl.h
40-
public let FSCTL_SET_REPARSE_POINT: DWORD = 0x900a4
41-
public let FSCTL_GET_REPARSE_POINT: DWORD = 0x900a8
42-
public let FSCTL_DELETE_REPARSE_POINT: DWORD = 0x900ac
57+
public var FSCTL_SET_REPARSE_POINT: DWORD {
58+
0x900a4
59+
}
60+
public var FSCTL_GET_REPARSE_POINT: DWORD {
61+
0x900a8
62+
}
63+
public var FSCTL_DELETE_REPARSE_POINT: DWORD {
64+
0x900ac
65+
}
4366

4467
// WinSock2.h
45-
public let INVALID_SOCKET: SOCKET = SOCKET(bitPattern: -1)
46-
public let FIONBIO: Int32 = Int32(bitPattern: 0x8004667e)
68+
public var INVALID_SOCKET: SOCKET {
69+
SOCKET(bitPattern: -1)
70+
}
71+
public var FIONBIO: Int32 {
72+
Int32(bitPattern: 0x8004667e)
73+
}
4774

4875
// WinUser.h
49-
public let CW_USEDEFAULT: Int32 = Int32(bitPattern: 2147483648)
50-
public let WS_OVERLAPPEDWINDOW: UINT =
51-
UINT(WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME | WS_MINIMIZEBOX | WS_MAXIMIZEBOX)
52-
public let WS_POPUPWINDOW: UINT =
53-
UINT(numericCast(WS_POPUP) | WS_BORDER | WS_SYSMENU)
76+
public var CW_USEDEFAULT: Int32 {
77+
Int32(bitPattern: 2147483648)
78+
}
79+
public var WS_OVERLAPPEDWINDOW: UINT {
80+
UINT(WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME | WS_MINIMIZEBOX | WS_MAXIMIZEBOX)
81+
}
82+
public var WS_POPUPWINDOW: UINT {
83+
UINT(numericCast(WS_POPUP) | WS_BORDER | WS_SYSMENU)
84+
}
5485

5586
// fileapi.h
56-
public let INVALID_FILE_ATTRIBUTES: DWORD = DWORD(bitPattern: -1)
87+
public var INVALID_FILE_ATTRIBUTES: DWORD {
88+
DWORD(bitPattern: -1)
89+
}
5790

5891
// CommCtrl.h
5992
public let WC_BUTTONW: [WCHAR] = Array<WCHAR>("Button".utf16)
@@ -76,32 +109,58 @@ public let TRACKBAR_CLASSW: [WCHAR] = Array<WCHAR>("msctls_trackbar32".utf16)
76109
public let UPDOWN_CLASSW: [WCHAR] = Array<WCHAR>("msctls_updown32".utf16)
77110

78111
// consoleapi.h
79-
public let PROC_THREAD_ATTRIBUTE_PSEUDOCONSOLE: DWORD_PTR = 0x00020016
112+
public var PROC_THREAD_ATTRIBUTE_PSEUDOCONSOLE: DWORD_PTR {
113+
0x00020016
114+
}
80115

81116
// windef.h
82-
public let DPI_AWARENESS_CONTEXT_UNAWARE: DPI_AWARENESS_CONTEXT =
83-
DPI_AWARENESS_CONTEXT(bitPattern: -1)!
84-
public let DPI_AWARENESS_CONTEXT_SYSTEM_AWARE: DPI_AWARENESS_CONTEXT =
85-
DPI_AWARENESS_CONTEXT(bitPattern: -2)!
86-
public let DPI_AWARENESS_CONTEXT_PER_MONITOR_AWARE: DPI_AWARENESS_CONTEXT =
87-
DPI_AWARENESS_CONTEXT(bitPattern: -3)!
88-
public let DPI_AWARENESS_CONTEXT_PER_MONITOR_AWARE_V2: DPI_AWARENESS_CONTEXT =
89-
DPI_AWARENESS_CONTEXT(bitPattern: -4)!
90-
public let DPI_AWARENESS_CONTEXT_UNAWARE_GDISCALED: DPI_AWARENESS_CONTEXT =
91-
DPI_AWARENESS_CONTEXT(bitPattern: -5)!
117+
public var DPI_AWARENESS_CONTEXT_UNAWARE: DPI_AWARENESS_CONTEXT {
118+
DPI_AWARENESS_CONTEXT(bitPattern: -1)!
119+
}
120+
public var DPI_AWARENESS_CONTEXT_SYSTEM_AWARE: DPI_AWARENESS_CONTEXT {
121+
DPI_AWARENESS_CONTEXT(bitPattern: -2)!
122+
}
123+
public var DPI_AWARENESS_CONTEXT_PER_MONITOR_AWARE: DPI_AWARENESS_CONTEXT {
124+
DPI_AWARENESS_CONTEXT(bitPattern: -3)!
125+
}
126+
public var DPI_AWARENESS_CONTEXT_PER_MONITOR_AWARE_V2: DPI_AWARENESS_CONTEXT {
127+
DPI_AWARENESS_CONTEXT(bitPattern: -4)!
128+
}
129+
public var DPI_AWARENESS_CONTEXT_UNAWARE_GDISCALED: DPI_AWARENESS_CONTEXT {
130+
DPI_AWARENESS_CONTEXT(bitPattern: -5)!
131+
}
92132

93133
// winreg.h
94-
public let HKEY_CLASSES_ROOT: HKEY = HKEY(bitPattern: UInt(0x80000000))!
95-
public let HKEY_CURRENT_USER: HKEY = HKEY(bitPattern: UInt(0x80000001))!
96-
public let HKEY_LOCAL_MACHINE: HKEY = HKEY(bitPattern: UInt(0x80000002))!
97-
public let HKEY_USERS: HKEY = HKEY(bitPattern: UInt(0x80000003))!
98-
public let HKEY_PERFORMANCE_DATA: HKEY = HKEY(bitPattern: UInt(0x80000004))!
99-
public let HKEY_PERFORMANCE_TEXT: HKEY = HKEY(bitPattern: UInt(0x80000050))!
100-
public let HKEY_PERFORMANCE_NLSTEXT: HKEY = HKEY(bitPattern: UInt(0x80000060))!
101-
public let HKEY_CURRENT_CONFIG: HKEY = HKEY(bitPattern: UInt(0x80000005))!
102-
public let HKEY_DYN_DATA: HKEY = HKEY(bitPattern: UInt(0x80000006))!
103-
public let HKEY_CURRENT_USER_LOCAL_SETTINGS: HKEY =
104-
HKEY(bitPattern: UInt(0x80000007))!
134+
public var HKEY_CLASSES_ROOT: HKEY {
135+
HKEY(bitPattern: UInt(0x80000000))!
136+
}
137+
public var HKEY_CURRENT_USER: HKEY {
138+
HKEY(bitPattern: UInt(0x80000001))!
139+
}
140+
public var HKEY_LOCAL_MACHINE: HKEY {
141+
HKEY(bitPattern: UInt(0x80000002))!
142+
}
143+
public var HKEY_USERS: HKEY {
144+
HKEY(bitPattern: UInt(0x80000003))!
145+
}
146+
public var HKEY_PERFORMANCE_DATA: HKEY {
147+
HKEY(bitPattern: UInt(0x80000004))!
148+
}
149+
public var HKEY_PERFORMANCE_TEXT: HKEY {
150+
HKEY(bitPattern: UInt(0x80000050))!
151+
}
152+
public var HKEY_PERFORMANCE_NLSTEXT: HKEY {
153+
HKEY(bitPattern: UInt(0x80000060))!
154+
}
155+
public var HKEY_CURRENT_CONFIG: HKEY {
156+
HKEY(bitPattern: UInt(0x80000005))!
157+
}
158+
public var HKEY_DYN_DATA: HKEY {
159+
HKEY(bitPattern: UInt(0x80000006))!
160+
}
161+
public var HKEY_CURRENT_USER_LOCAL_SETTINGS: HKEY {
162+
HKEY(bitPattern: UInt(0x80000007))!
163+
}
105164

106165
// Richedit.h
107166
public let MSFTEDIT_CLASS: [WCHAR] = Array<WCHAR>("RICHEDIT50W".utf16)

0 commit comments

Comments
 (0)