summaryrefslogtreecommitdiff
path: root/vendor/winapi/src/shared/minwindef.rs
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/winapi/src/shared/minwindef.rs')
-rw-r--r--vendor/winapi/src/shared/minwindef.rs102
1 files changed, 102 insertions, 0 deletions
diff --git a/vendor/winapi/src/shared/minwindef.rs b/vendor/winapi/src/shared/minwindef.rs
new file mode 100644
index 0000000..6c2e38d
--- /dev/null
+++ b/vendor/winapi/src/shared/minwindef.rs
@@ -0,0 +1,102 @@
+// Licensed under the Apache License, Version 2.0
+// <LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
+// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your option.
+// All files in the project carrying such notice may not be copied, modified, or distributed
+// except according to those terms.
+//! Basic Windows Type Definitions for minwin partition
+use ctypes::{c_char, c_float, c_int, c_long, c_uchar, c_uint, c_ulong, c_ushort, c_void};
+use shared::basetsd::{LONG_PTR, UINT_PTR};
+use shared::ntdef::{HANDLE, LONG};
+pub type ULONG = c_ulong;
+pub type PULONG = *mut ULONG;
+pub type USHORT = c_ushort;
+pub type PUSHORT = *mut USHORT;
+pub type UCHAR = c_uchar;
+pub type PUCHAR = *mut UCHAR;
+pub type PSZ = *mut c_char;
+pub const MAX_PATH: usize = 260;
+pub const FALSE: BOOL = 0;
+pub const TRUE: BOOL = 1;
+pub type DWORD = c_ulong;
+pub type BOOL = c_int;
+pub type BYTE = c_uchar;
+pub type WORD = c_ushort;
+pub type FLOAT = c_float;
+pub type PFLOAT = *mut FLOAT;
+pub type PBOOL = *mut BOOL;
+pub type LPBOOL = *mut BOOL;
+pub type PBYTE = *mut BYTE;
+pub type LPBYTE = *mut BYTE;
+pub type PINT = *mut c_int;
+pub type LPINT = *mut c_int;
+pub type PWORD = *mut WORD;
+pub type LPWORD = *mut WORD;
+pub type LPLONG = *mut c_long;
+pub type PDWORD = *mut DWORD;
+pub type LPDWORD = *mut DWORD;
+pub type LPVOID = *mut c_void;
+pub type LPCVOID = *const c_void;
+pub type INT = c_int;
+pub type UINT = c_uint;
+pub type PUINT = *mut c_uint;
+pub type WPARAM = UINT_PTR;
+pub type LPARAM = LONG_PTR;
+pub type LRESULT = LONG_PTR;
+#[inline]
+pub fn MAKEWORD(a: BYTE, b: BYTE) -> WORD {
+ (a as WORD) | ((b as WORD) << 8)
+}
+#[inline]
+pub fn MAKELONG(a: WORD, b: WORD) -> LONG {
+ ((a as DWORD) | ((b as DWORD) << 16)) as LONG
+}
+#[inline]
+pub fn LOWORD(l: DWORD) -> WORD {
+ (l & 0xffff) as WORD
+}
+#[inline]
+pub fn HIWORD(l: DWORD) -> WORD {
+ ((l >> 16) & 0xffff) as WORD
+}
+#[inline]
+pub fn LOBYTE(l: WORD) -> BYTE {
+ (l & 0xff) as BYTE
+}
+#[inline]
+pub fn HIBYTE(l: WORD) -> BYTE {
+ ((l >> 8) & 0xff) as BYTE
+}
+pub type SPHANDLE = *mut HANDLE;
+pub type LPHANDLE = *mut HANDLE;
+pub type HGLOBAL = HANDLE;
+pub type HLOCAL = HANDLE;
+pub type GLOBALHANDLE = HANDLE;
+pub type LOCALHANDLE = HANDLE;
+pub enum __some_function {}
+/// Pointer to a function with unknown type signature.
+pub type FARPROC = *mut __some_function;
+/// Pointer to a function with unknown type signature.
+pub type NEARPROC = *mut __some_function;
+/// Pointer to a function with unknown type signature.
+pub type PROC = *mut __some_function;
+pub type ATOM = WORD;
+DECLARE_HANDLE!{HKEY, HKEY__}
+pub type PHKEY = *mut HKEY;
+DECLARE_HANDLE!{HMETAFILE, HMETAFILE__}
+DECLARE_HANDLE!{HINSTANCE, HINSTANCE__}
+pub type HMODULE = HINSTANCE;
+DECLARE_HANDLE!{HRGN, HRGN__}
+DECLARE_HANDLE!{HRSRC, HRSRC__}
+DECLARE_HANDLE!{HSPRITE, HSPRITE__}
+DECLARE_HANDLE!{HLSURF, HLSURF__}
+DECLARE_HANDLE!{HSTR, HSTR__}
+DECLARE_HANDLE!{HTASK, HTASK__}
+DECLARE_HANDLE!{HWINSTA, HWINSTA__}
+DECLARE_HANDLE!{HKL, HKL__}
+pub type HFILE = c_int;
+STRUCT!{#[debug] struct FILETIME {
+ dwLowDateTime: DWORD,
+ dwHighDateTime: DWORD,
+}}
+pub type PFILETIME = *mut FILETIME;
+pub type LPFILETIME = *mut FILETIME;