aboutsummaryrefslogtreecommitdiff
path: root/lib/std/os/windows/kernel32.zig
diff options
context:
space:
mode:
authorAlex Rønne Petersen <alex@alexrp.com>2024-11-03 14:27:09 +0100
committerGitHub <noreply@github.com>2024-11-03 14:27:09 +0100
commit3054486d1dedd49553680da2c074d1ab413797fd (patch)
tree79c3d4e9b417d14ddb11a47e26da083d5e06e8aa /lib/std/os/windows/kernel32.zig
parent2f003f39b28176f08de51271eb66b5f3a54c7aae (diff)
parente4e3d7ab4140ae6f078d3ffd72fce4c0a5e6e59f (diff)
downloadzig-3054486d1dedd49553680da2c074d1ab413797fd.tar.gz
zig-3054486d1dedd49553680da2c074d1ab413797fd.zip
Merge pull request #21843 from alexrp/callconv-followup
Some follow-up work for #21697
Diffstat (limited to 'lib/std/os/windows/kernel32.zig')
-rw-r--r--lib/std/os/windows/kernel32.zig191
1 files changed, 95 insertions, 96 deletions
diff --git a/lib/std/os/windows/kernel32.zig b/lib/std/os/windows/kernel32.zig
index b8ae72af55..f2da7957a8 100644
--- a/lib/std/os/windows/kernel32.zig
+++ b/lib/std/os/windows/kernel32.zig
@@ -41,7 +41,6 @@ const VECTORED_EXCEPTION_HANDLER = windows.VECTORED_EXCEPTION_HANDLER;
const WCHAR = windows.WCHAR;
const WIN32_FIND_DATAW = windows.WIN32_FIND_DATAW;
const Win32Error = windows.Win32Error;
-const WINAPI = windows.WINAPI;
const WORD = windows.WORD;
// I/O - Filesystem
@@ -55,18 +54,18 @@ pub extern "kernel32" fn ReadDirectoryChangesW(
lpBytesReturned: ?*windows.DWORD,
lpOverlapped: ?*windows.OVERLAPPED,
lpCompletionRoutine: windows.LPOVERLAPPED_COMPLETION_ROUTINE,
-) callconv(windows.WINAPI) windows.BOOL;
+) callconv(.winapi) windows.BOOL;
// TODO: Wrapper around NtCancelIoFile.
pub extern "kernel32" fn CancelIo(
hFile: HANDLE,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
// TODO: Wrapper around NtCancelIoFileEx.
pub extern "kernel32" fn CancelIoEx(
hFile: HANDLE,
lpOverlapped: ?*OVERLAPPED,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
pub extern "kernel32" fn CreateFileW(
lpFileName: LPCWSTR,
@@ -76,7 +75,7 @@ pub extern "kernel32" fn CreateFileW(
dwCreationDisposition: DWORD,
dwFlagsAndAttributes: DWORD,
hTemplateFile: ?HANDLE,
-) callconv(WINAPI) HANDLE;
+) callconv(.winapi) HANDLE;
// TODO A bunch of logic around NtCreateNamedPipe
pub extern "kernel32" fn CreateNamedPipeW(
@@ -88,16 +87,16 @@ pub extern "kernel32" fn CreateNamedPipeW(
nInBufferSize: DWORD,
nDefaultTimeOut: DWORD,
lpSecurityAttributes: ?*const SECURITY_ATTRIBUTES,
-) callconv(WINAPI) HANDLE;
+) callconv(.winapi) HANDLE;
pub extern "kernel32" fn FindFirstFileW(
lpFileName: LPCWSTR,
lpFindFileData: *WIN32_FIND_DATAW,
-) callconv(WINAPI) HANDLE;
+) callconv(.winapi) HANDLE;
pub extern "kernel32" fn FindClose(
hFindFile: HANDLE,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
// TODO: Wrapper around RtlGetFullPathName_UEx
pub extern "kernel32" fn GetFullPathNameW(
@@ -105,18 +104,18 @@ pub extern "kernel32" fn GetFullPathNameW(
nBufferLength: DWORD,
lpBuffer: LPWSTR,
lpFilePart: ?*?LPWSTR,
-) callconv(WINAPI) DWORD;
+) callconv(.winapi) DWORD;
// TODO: Matches `STD_*_HANDLE` to peb().ProcessParameters.Standard*
pub extern "kernel32" fn GetStdHandle(
nStdHandle: DWORD,
-) callconv(WINAPI) ?HANDLE;
+) callconv(.winapi) ?HANDLE;
pub extern "kernel32" fn MoveFileExW(
lpExistingFileName: LPCWSTR,
lpNewFileName: LPCWSTR,
dwFlags: DWORD,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
// TODO: Wrapper around NtSetInformationFile + `FILE_POSITION_INFORMATION`.
// `FILE_STANDARD_INFORMATION` is also used if dwMoveMethod is `FILE_END`
@@ -125,7 +124,7 @@ pub extern "kernel32" fn SetFilePointerEx(
liDistanceToMove: LARGE_INTEGER,
lpNewFilePointer: ?*LARGE_INTEGER,
dwMoveMethod: DWORD,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
// TODO: Wrapper around NtSetInformationFile + `FILE_BASIC_INFORMATION`
pub extern "kernel32" fn SetFileTime(
@@ -133,7 +132,7 @@ pub extern "kernel32" fn SetFileTime(
lpCreationTime: ?*const FILETIME,
lpLastAccessTime: ?*const FILETIME,
lpLastWriteTime: ?*const FILETIME,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
pub extern "kernel32" fn WriteFile(
in_hFile: HANDLE,
@@ -141,35 +140,35 @@ pub extern "kernel32" fn WriteFile(
in_nNumberOfBytesToWrite: DWORD,
out_lpNumberOfBytesWritten: ?*DWORD,
in_out_lpOverlapped: ?*OVERLAPPED,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
// TODO: wrapper for NtQueryInformationFile + `FILE_STANDARD_INFORMATION`
pub extern "kernel32" fn GetFileSizeEx(
hFile: HANDLE,
lpFileSize: *LARGE_INTEGER,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
// TODO: Wrapper around GetStdHandle + NtFlushBuffersFile.
pub extern "kernel32" fn FlushFileBuffers(
hFile: HANDLE,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
// TODO: Wrapper around NtSetInformationFile + `FILE_IO_COMPLETION_NOTIFICATION_INFORMATION`.
pub extern "kernel32" fn SetFileCompletionNotificationModes(
FileHandle: HANDLE,
Flags: UCHAR,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
// TODO: `RtlGetCurrentDirectory_U(nBufferLength * 2, lpBuffer)`
pub extern "kernel32" fn GetCurrentDirectoryW(
nBufferLength: DWORD,
lpBuffer: ?[*]WCHAR,
-) callconv(WINAPI) DWORD;
+) callconv(.winapi) DWORD;
// TODO: RtlDosPathNameToNtPathNameU_WithStatus + NtQueryAttributesFile.
pub extern "kernel32" fn GetFileAttributesW(
lpFileName: LPCWSTR,
-) callconv(WINAPI) DWORD;
+) callconv(.winapi) DWORD;
pub extern "kernel32" fn ReadFile(
hFile: HANDLE,
@@ -177,12 +176,12 @@ pub extern "kernel32" fn ReadFile(
nNumberOfBytesToRead: DWORD,
lpNumberOfBytesRead: ?*DWORD,
lpOverlapped: ?*OVERLAPPED,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
pub extern "kernel32" fn GetSystemDirectoryW(
lpBuffer: LPWSTR,
uSize: UINT,
-) callconv(WINAPI) UINT;
+) callconv(.winapi) UINT;
// I/O - Kernel Objects
@@ -192,7 +191,7 @@ pub extern "kernel32" fn CreateEventExW(
lpName: ?LPCWSTR,
dwFlags: DWORD,
dwDesiredAccess: DWORD,
-) callconv(WINAPI) ?HANDLE;
+) callconv(.winapi) ?HANDLE;
// TODO: Wrapper around GetStdHandle + NtDuplicateObject.
pub extern "kernel32" fn DuplicateHandle(
@@ -203,14 +202,14 @@ pub extern "kernel32" fn DuplicateHandle(
dwDesiredAccess: DWORD,
bInheritHandle: BOOL,
dwOptions: DWORD,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
// TODO: Wrapper around GetStdHandle + NtQueryObject + NtSetInformationObject with .ObjectHandleFlagInformation.
pub extern "kernel32" fn SetHandleInformation(
hObject: HANDLE,
dwMask: DWORD,
dwFlags: DWORD,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
// TODO: Wrapper around NtRemoveIoCompletion.
pub extern "kernel32" fn GetQueuedCompletionStatus(
@@ -219,7 +218,7 @@ pub extern "kernel32" fn GetQueuedCompletionStatus(
lpCompletionKey: *ULONG_PTR,
lpOverlapped: *?*OVERLAPPED,
dwMilliseconds: DWORD,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
// TODO: Wrapper around NtRemoveIoCompletionEx.
pub extern "kernel32" fn GetQueuedCompletionStatusEx(
@@ -229,7 +228,7 @@ pub extern "kernel32" fn GetQueuedCompletionStatusEx(
ulNumEntriesRemoved: *ULONG,
dwMilliseconds: DWORD,
fAlertable: BOOL,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
// TODO: Wrapper around NtSetIoCompletion with `IoStatus = .SUCCESS`.
pub extern "kernel32" fn PostQueuedCompletionStatus(
@@ -237,7 +236,7 @@ pub extern "kernel32" fn PostQueuedCompletionStatus(
dwNumberOfBytesTransferred: DWORD,
dwCompletionKey: ULONG_PTR,
lpOverlapped: ?*OVERLAPPED,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
// TODO:
// GetOverlappedResultEx with bAlertable=false, which calls: GetStdHandle + WaitForSingleObjectEx.
@@ -247,7 +246,7 @@ pub extern "kernel32" fn GetOverlappedResult(
lpOverlapped: *OVERLAPPED,
lpNumberOfBytesTransferred: *DWORD,
bWait: BOOL,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
// TODO: Wrapper around NtCreateIoCompletion + NtSetInformationFile with FILE_COMPLETION_INFORMATION.
// This would be better splitting into two functions.
@@ -256,30 +255,30 @@ pub extern "kernel32" fn CreateIoCompletionPort(
ExistingCompletionPort: ?HANDLE,
CompletionKey: ULONG_PTR,
NumberOfConcurrentThreads: DWORD,
-) callconv(WINAPI) ?HANDLE;
+) callconv(.winapi) ?HANDLE;
// TODO: Forwarder to NtAddVectoredExceptionHandler.
pub extern "kernel32" fn AddVectoredExceptionHandler(
First: ULONG,
Handler: ?VECTORED_EXCEPTION_HANDLER,
-) callconv(WINAPI) ?LPVOID;
+) callconv(.winapi) ?LPVOID;
// TODO: Forwarder to NtRemoveVectoredExceptionHandler.
pub extern "kernel32" fn RemoveVectoredExceptionHandler(
Handle: HANDLE,
-) callconv(WINAPI) ULONG;
+) callconv(.winapi) ULONG;
// TODO: Wrapper around RtlReportSilentProcessExit + NtTerminateProcess.
pub extern "kernel32" fn TerminateProcess(
hProcess: HANDLE,
uExitCode: UINT,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
// TODO: WaitForSingleObjectEx with bAlertable=false.
pub extern "kernel32" fn WaitForSingleObject(
hHandle: HANDLE,
dwMilliseconds: DWORD,
-) callconv(WINAPI) DWORD;
+) callconv(.winapi) DWORD;
// TODO: Wrapper for GetStdHandle + NtWaitForSingleObject.
// Sets up an activation context before calling NtWaitForSingleObject.
@@ -287,7 +286,7 @@ pub extern "kernel32" fn WaitForSingleObjectEx(
hHandle: HANDLE,
dwMilliseconds: DWORD,
bAlertable: BOOL,
-) callconv(WINAPI) DWORD;
+) callconv(.winapi) DWORD;
// TODO: WaitForMultipleObjectsEx with alertable=false
pub extern "kernel32" fn WaitForMultipleObjects(
@@ -295,7 +294,7 @@ pub extern "kernel32" fn WaitForMultipleObjects(
lpHandle: [*]const HANDLE,
bWaitAll: BOOL,
dwMilliseconds: DWORD,
-) callconv(WINAPI) DWORD;
+) callconv(.winapi) DWORD;
// TODO: Wrapper around NtWaitForMultipleObjects.
pub extern "kernel32" fn WaitForMultipleObjectsEx(
@@ -304,7 +303,7 @@ pub extern "kernel32" fn WaitForMultipleObjectsEx(
bWaitAll: BOOL,
dwMilliseconds: DWORD,
bAlertable: BOOL,
-) callconv(WINAPI) DWORD;
+) callconv(.winapi) DWORD;
// Process Management
@@ -319,57 +318,57 @@ pub extern "kernel32" fn CreateProcessW(
lpCurrentDirectory: ?LPCWSTR,
lpStartupInfo: *STARTUPINFOW,
lpProcessInformation: *PROCESS_INFORMATION,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
// TODO: Fowarder to RtlExitUserProcess.
pub extern "kernel32" fn ExitProcess(
exit_code: UINT,
-) callconv(WINAPI) noreturn;
+) callconv(.winapi) noreturn;
// TODO: SleepEx with bAlertable=false.
pub extern "kernel32" fn Sleep(
dwMilliseconds: DWORD,
-) callconv(WINAPI) void;
+) callconv(.winapi) void;
// TODO: Wrapper around NtQueryInformationProcess with `PROCESS_BASIC_INFORMATION`.
pub extern "kernel32" fn GetExitCodeProcess(
hProcess: HANDLE,
lpExitCode: *DWORD,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
// TODO: Already a wrapper for this, see `windows.GetCurrentProcess`.
-pub extern "kernel32" fn GetCurrentProcess() callconv(WINAPI) HANDLE;
+pub extern "kernel32" fn GetCurrentProcess() callconv(.winapi) HANDLE;
// TODO: memcpy peb().ProcessParameters.Environment, mem.span(0). Requires locking the PEB.
-pub extern "kernel32" fn GetEnvironmentStringsW() callconv(WINAPI) ?LPWSTR;
+pub extern "kernel32" fn GetEnvironmentStringsW() callconv(.winapi) ?LPWSTR;
// TODO: RtlFreeHeap on the output of GetEnvironmentStringsW.
pub extern "kernel32" fn FreeEnvironmentStringsW(
penv: LPWSTR,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
// TODO: Wrapper around RtlQueryEnvironmentVariable.
pub extern "kernel32" fn GetEnvironmentVariableW(
lpName: ?LPCWSTR,
lpBuffer: ?[*]WCHAR,
nSize: DWORD,
-) callconv(WINAPI) DWORD;
+) callconv(.winapi) DWORD;
// TODO: Wrapper around RtlSetEnvironmentVar.
pub extern "kernel32" fn SetEnvironmentVariableW(
lpName: LPCWSTR,
lpValue: ?LPCWSTR,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
pub extern "kernel32" fn CreateToolhelp32Snapshot(
dwFlags: DWORD,
th32ProcessID: DWORD,
-) callconv(WINAPI) HANDLE;
+) callconv(.winapi) HANDLE;
// Threading
// TODO: Already a wrapper for this, see `windows.GetCurrentThreadId`.
-pub extern "kernel32" fn GetCurrentThreadId() callconv(WINAPI) DWORD;
+pub extern "kernel32" fn GetCurrentThreadId() callconv(.winapi) DWORD;
// TODO: CreateRemoteThread with hProcess=NtCurrentProcess().
pub extern "kernel32" fn CreateThread(
@@ -379,64 +378,64 @@ pub extern "kernel32" fn CreateThread(
lpParameter: ?LPVOID,
dwCreationFlags: DWORD,
lpThreadId: ?*DWORD,
-) callconv(WINAPI) ?HANDLE;
+) callconv(.winapi) ?HANDLE;
// TODO: Wrapper around RtlDelayExecution.
-pub extern "kernel32" fn SwitchToThread() callconv(WINAPI) BOOL;
+pub extern "kernel32" fn SwitchToThread() callconv(.winapi) BOOL;
// Locks, critical sections, initializers
// TODO: Forwarder to RtlInitializeCriticalSection
pub extern "kernel32" fn InitializeCriticalSection(
lpCriticalSection: *CRITICAL_SECTION,
-) callconv(WINAPI) void;
+) callconv(.winapi) void;
// TODO: Forwarder to RtlEnterCriticalSection
pub extern "kernel32" fn EnterCriticalSection(
lpCriticalSection: *CRITICAL_SECTION,
-) callconv(WINAPI) void;
+) callconv(.winapi) void;
// TODO: Forwarder to RtlLeaveCriticalSection
pub extern "kernel32" fn LeaveCriticalSection(
lpCriticalSection: *CRITICAL_SECTION,
-) callconv(WINAPI) void;
+) callconv(.winapi) void;
// TODO: Forwarder to RtlDeleteCriticalSection
pub extern "kernel32" fn DeleteCriticalSection(
lpCriticalSection: *CRITICAL_SECTION,
-) callconv(WINAPI) void;
+) callconv(.winapi) void;
// TODO: Forwarder to RtlTryAcquireSRWLockExclusive
pub extern "kernel32" fn TryAcquireSRWLockExclusive(
SRWLock: *SRWLOCK,
-) callconv(WINAPI) BOOLEAN;
+) callconv(.winapi) BOOLEAN;
// TODO: Forwarder to RtlAcquireSRWLockExclusive
pub extern "kernel32" fn AcquireSRWLockExclusive(
SRWLock: *SRWLOCK,
-) callconv(WINAPI) void;
+) callconv(.winapi) void;
// TODO: Forwarder to RtlReleaseSRWLockExclusive
pub extern "kernel32" fn ReleaseSRWLockExclusive(
SRWLock: *SRWLOCK,
-) callconv(WINAPI) void;
+) callconv(.winapi) void;
pub extern "kernel32" fn InitOnceExecuteOnce(
InitOnce: *INIT_ONCE,
InitFn: INIT_ONCE_FN,
Parameter: ?*anyopaque,
Context: ?*anyopaque,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
// TODO: Forwarder to RtlWakeConditionVariable
pub extern "kernel32" fn WakeConditionVariable(
ConditionVariable: *CONDITION_VARIABLE,
-) callconv(WINAPI) void;
+) callconv(.winapi) void;
// TODO: Forwarder to RtlWakeAllConditionVariable
pub extern "kernel32" fn WakeAllConditionVariable(
ConditionVariable: *CONDITION_VARIABLE,
-) callconv(WINAPI) void;
+) callconv(.winapi) void;
// TODO:
// - dwMilliseconds -> LARGE_INTEGER.
@@ -447,40 +446,40 @@ pub extern "kernel32" fn SleepConditionVariableSRW(
SRWLock: *SRWLOCK,
dwMilliseconds: DWORD,
Flags: ULONG,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
// Console management
pub extern "kernel32" fn GetConsoleMode(
hConsoleHandle: HANDLE,
lpMode: *DWORD,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
pub extern "kernel32" fn SetConsoleMode(
hConsoleHandle: HANDLE,
dwMode: DWORD,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
pub extern "kernel32" fn GetConsoleScreenBufferInfo(
hConsoleOutput: HANDLE,
lpConsoleScreenBufferInfo: *CONSOLE_SCREEN_BUFFER_INFO,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
pub extern "kernel32" fn SetConsoleTextAttribute(
hConsoleOutput: HANDLE,
wAttributes: WORD,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
pub extern "kernel32" fn SetConsoleCtrlHandler(
HandlerRoutine: ?HANDLER_ROUTINE,
Add: BOOL,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
pub extern "kernel32" fn SetConsoleOutputCP(
wCodePageID: UINT,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
-pub extern "kernel32" fn GetConsoleOutputCP() callconv(WINAPI) UINT;
+pub extern "kernel32" fn GetConsoleOutputCP() callconv(.winapi) UINT;
pub extern "kernel32" fn FillConsoleOutputAttribute(
hConsoleOutput: HANDLE,
@@ -488,7 +487,7 @@ pub extern "kernel32" fn FillConsoleOutputAttribute(
nLength: DWORD,
dwWriteCoord: COORD,
lpNumberOfAttrsWritten: *DWORD,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
pub extern "kernel32" fn FillConsoleOutputCharacterW(
hConsoleOutput: HANDLE,
@@ -496,12 +495,12 @@ pub extern "kernel32" fn FillConsoleOutputCharacterW(
nLength: DWORD,
dwWriteCoord: COORD,
lpNumberOfCharsWritten: *DWORD,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
pub extern "kernel32" fn SetConsoleCursorPosition(
hConsoleOutput: HANDLE,
dwCursorPosition: COORD,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
pub extern "kernel32" fn WriteConsoleW(
hConsoleOutput: HANDLE,
@@ -509,7 +508,7 @@ pub extern "kernel32" fn WriteConsoleW(
nNumberOfCharsToWrite: DWORD,
lpNumberOfCharsWritten: ?*DWORD,
lpReserved: ?LPVOID,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
pub extern "kernel32" fn ReadConsoleOutputCharacterW(
hConsoleOutput: HANDLE,
@@ -517,7 +516,7 @@ pub extern "kernel32" fn ReadConsoleOutputCharacterW(
nLength: DWORD,
dwReadCoord: COORD,
lpNumberOfCharsRead: *DWORD,
-) callconv(windows.WINAPI) BOOL;
+) callconv(.winapi) BOOL;
// Memory Mapping/Allocation
@@ -526,12 +525,12 @@ pub extern "kernel32" fn HeapCreate(
flOptions: DWORD,
dwInitialSize: SIZE_T,
dwMaximumSize: SIZE_T,
-) callconv(WINAPI) ?HANDLE;
+) callconv(.winapi) ?HANDLE;
// TODO: Wrapper around RtlDestroyHeap (BOOLEAN -> BOOL).
pub extern "kernel32" fn HeapDestroy(
hHeap: HANDLE,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
// TODO: Forwarder to RtlReAllocateHeap.
pub extern "kernel32" fn HeapReAlloc(
@@ -539,28 +538,28 @@ pub extern "kernel32" fn HeapReAlloc(
dwFlags: DWORD,
lpMem: *anyopaque,
dwBytes: SIZE_T,
-) callconv(WINAPI) ?*anyopaque;
+) callconv(.winapi) ?*anyopaque;
// TODO: Fowrarder to RtlAllocateHeap.
pub extern "kernel32" fn HeapAlloc(
hHeap: HANDLE,
dwFlags: DWORD,
dwBytes: SIZE_T,
-) callconv(WINAPI) ?*anyopaque;
+) callconv(.winapi) ?*anyopaque;
// TODO: Fowrarder to RtlFreeHeap.
pub extern "kernel32" fn HeapFree(
hHeap: HANDLE,
dwFlags: DWORD,
lpMem: LPVOID,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
// TODO: Wrapper around RtlValidateHeap (BOOLEAN -> BOOL)
pub extern "kernel32" fn HeapValidate(
hHeap: HANDLE,
dwFlags: DWORD,
lpMem: ?*const anyopaque,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
// TODO: Wrapper around NtAllocateVirtualMemory.
pub extern "kernel32" fn VirtualAlloc(
@@ -568,7 +567,7 @@ pub extern "kernel32" fn VirtualAlloc(
dwSize: SIZE_T,
flAllocationType: DWORD,
flProtect: DWORD,
-) callconv(WINAPI) ?LPVOID;
+) callconv(.winapi) ?LPVOID;
// TODO: Wrapper around NtFreeVirtualMemory.
// If the return value is .INVALID_PAGE_PROTECTION, calls RtlFlushSecureMemoryCache and try again.
@@ -576,21 +575,21 @@ pub extern "kernel32" fn VirtualFree(
lpAddress: ?LPVOID,
dwSize: SIZE_T,
dwFreeType: DWORD,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
// TODO: Wrapper around NtQueryVirtualMemory.
pub extern "kernel32" fn VirtualQuery(
lpAddress: ?LPVOID,
lpBuffer: PMEMORY_BASIC_INFORMATION,
dwLength: SIZE_T,
-) callconv(WINAPI) SIZE_T;
+) callconv(.winapi) SIZE_T;
pub extern "kernel32" fn LocalFree(
hMem: HLOCAL,
-) callconv(WINAPI) ?HLOCAL;
+) callconv(.winapi) ?HLOCAL;
// TODO: Getter for peb.ProcessHeap
-pub extern "kernel32" fn GetProcessHeap() callconv(WINAPI) ?HANDLE;
+pub extern "kernel32" fn GetProcessHeap() callconv(.winapi) ?HANDLE;
// Code Libraries/Modules
@@ -599,49 +598,49 @@ pub extern "kernel32" fn GetModuleFileNameW(
hModule: ?HMODULE,
lpFilename: [*]WCHAR,
nSize: DWORD,
-) callconv(WINAPI) DWORD;
+) callconv(.winapi) DWORD;
extern "kernel32" fn K32GetModuleFileNameExW(
hProcess: HANDLE,
hModule: ?HMODULE,
lpFilename: LPWSTR,
nSize: DWORD,
-) callconv(WINAPI) DWORD;
+) callconv(.winapi) DWORD;
pub const GetModuleFileNameExW = K32GetModuleFileNameExW;
// TODO: Wrapper around ntdll.LdrGetDllHandle, which is a wrapper around LdrGetDllHandleEx
pub extern "kernel32" fn GetModuleHandleW(
lpModuleName: ?LPCWSTR,
-) callconv(WINAPI) ?HMODULE;
+) callconv(.winapi) ?HMODULE;
pub extern "kernel32" fn Module32First(
hSnapshot: HANDLE,
lpme: *MODULEENTRY32,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
pub extern "kernel32" fn Module32Next(
hSnapshot: HANDLE,
lpme: *MODULEENTRY32,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
pub extern "kernel32" fn LoadLibraryW(
lpLibFileName: LPCWSTR,
-) callconv(WINAPI) ?HMODULE;
+) callconv(.winapi) ?HMODULE;
pub extern "kernel32" fn LoadLibraryExW(
lpLibFileName: LPCWSTR,
hFile: ?HANDLE,
dwFlags: DWORD,
-) callconv(WINAPI) ?HMODULE;
+) callconv(.winapi) ?HMODULE;
pub extern "kernel32" fn GetProcAddress(
hModule: HMODULE,
lpProcName: LPCSTR,
-) callconv(WINAPI) ?FARPROC;
+) callconv(.winapi) ?FARPROC;
pub extern "kernel32" fn FreeLibrary(
hModule: HMODULE,
-) callconv(WINAPI) BOOL;
+) callconv(.winapi) BOOL;
// Error Management
@@ -653,15 +652,15 @@ pub extern "kernel32" fn FormatMessageW(
lpBuffer: LPWSTR,
nSize: DWORD,
Arguments: ?*va_list,
-) callconv(WINAPI) DWORD;
+) callconv(.winapi) DWORD;
// TODO: Getter for teb().LastErrorValue.
-pub extern "kernel32" fn GetLastError() callconv(WINAPI) Win32Error;
+pub extern "kernel32" fn GetLastError() callconv(.winapi) Win32Error;
// TODO: Wrapper around RtlSetLastWin32Error.
pub extern "kernel32" fn SetLastError(
dwErrCode: Win32Error,
-) callconv(WINAPI) void;
+) callconv(.winapi) void;
// Everything Else
@@ -670,4 +669,4 @@ pub extern "kernel32" fn SetLastError(
// Much better to use NtQuerySystemTime or NtQuerySystemTimePrecise for guaranteed 0.1ns precision.
pub extern "kernel32" fn GetSystemTimeAsFileTime(
lpSystemTimeAsFileTime: *FILETIME,
-) callconv(WINAPI) void;
+) callconv(.winapi) void;