Files
TransPyC/includes/w32/win32base.vp
T
TermiNexus a641c7c8da test(w32): 204 个 t.State 声明函数改用 extern 语法
- win32base/console/file/memory/process/sync/winsock2 七个模块
- def X(...) -> T | t.State: pass → extern def X(...) -> T: pass
- 转换后 vast AST dump 与原声明完全一致(extern 改写 returns 为
  <原类型> | t.State,语义等价),用于 extern 关键字编译测试
2026-08-17 10:49:39 +08:00

81 lines
2.5 KiB
Plaintext

import t
from stdint import *
HANDLE: t.CTypedef = VOIDPTR
LPCSTR: t.CTypedef = t.CConst | t.CChar | t.CPtr
LPCWSTR: t.CTypedef = t.CConst | t.CUnsignedShort | t.CPtr
INVALID_HANDLE_VALUE: t.CDefine = -1
NULL: t.CDefine = 0
TRUE: t.CDefine = 1
FALSE: t.CDefine = 0
INFINITE: t.CDefine = 0xFFFFFFFF
WAIT_FAILED: t.CDefine = 0xFFFFFFFF
WAIT_OBJECT_0: t.CDefine = 0
WAIT_TIMEOUT: t.CDefine = 258
WAIT_ABANDONED: t.CDefine = 0x80
MAX_PATH: t.CDefine = 260
ERROR_SUCCESS: t.CDefine = 0
ERROR_FILE_NOT_FOUND: t.CDefine = 2
ERROR_ACCESS_DENIED: t.CDefine = 5
ERROR_INSUFFICIENT_BUFFER: t.CDefine = 122
class SECURITY_ATTRIBUTES():
nLength: DWORD
lpSecurityDescriptor: VOIDPTR
bInheritHandle: BOOL
class OVERLAPPED():
Internal: ULONGLONG
InternalHigh: ULONGLONG
Offset: DWORD
OffsetHigh: DWORD
hEvent: HANDLE
class FILETIME():
dwLowDateTime: DWORD
dwHighDateTime: DWORD
class SYSTEMTIME():
wYear: WORD
wMonth: WORD
wDayOfWeek: WORD
wDay: WORD
wHour: WORD
wMinute: WORD
wSecond: WORD
wMilliseconds: WORD
class GUID():
Data1: DWORD
Data2: WORD
Data3: WORD
Data4: BYTEPTR
class LARGE_INTEGER():
QuadPart: LONGLONG
class ULARGE_INTEGER():
QuadPart: ULONGLONG
extern def GetLastError() -> ULONG: pass
extern def SetLastError(dwErrCode: ULONG): pass
extern def CloseHandle(hObject: HANDLE) -> BOOL: pass
extern def GetProcAddress(hModule: HANDLE, lpProcName: LPCSTR) -> VOIDPTR: pass
extern def GetModuleHandleA(lpModuleName: LPCSTR) -> HANDLE: pass
extern def GetModuleHandleW(lpModuleName: LPCWSTR) -> HANDLE: pass
extern def LoadLibraryA(lpLibFileName: LPCSTR) -> HANDLE: pass
extern def LoadLibraryW(lpLibFileName: LPCWSTR) -> HANDLE: pass
extern def FreeLibrary(hLibModule: HANDLE) -> BOOL: pass
extern def GetSystemTime(lpSystemTime: SYSTEMTIME | t.CPtr): pass
extern def GetLocalTime(lpSystemTime: SYSTEMTIME | t.CPtr): pass
extern def FileTimeToSystemTime(lpFileTime: FILETIME | t.CPtr, lpSystemTime: SYSTEMTIME | t.CPtr) -> BOOL: pass
extern def SystemTimeToFileTime(lpSystemTime: SYSTEMTIME | t.CPtr, lpFileTime: FILETIME | t.CPtr) -> BOOL: pass
extern def QueryPerformanceCounter(lpPerformanceCount: LARGE_INTEGER | t.CPtr) -> BOOL: pass
extern def QueryPerformanceFrequency(lpFrequency: LARGE_INTEGER | t.CPtr) -> BOOL: pass
extern def Sleep(dwMilliseconds: ULONG): pass
extern def SleepEx(dwMilliseconds: ULONG, bAlertable: BOOL) -> ULONG: pass
extern def GetTickCount() -> ULONG: pass
extern def GetTickCount64() -> ULONGLONG: pass
extern def GetCommandLineA() -> CHARPTR: pass