1 //! # Features 2 //! **`func-types`** -- Generate [types][fn_ptr] for external functions.<br/> 3 //! **`impl-default`** -- Implement [`Default`] for structs and unions.<br/> 4 //! **`user`** *(default)* -- Link to `ntdll`.<br/> 5 //! **`kernel`** -- Link to `ntoskrnl` on MSVC targets.<br/> 6 //! **`nightly`** -- Unlock unstable features that require a nightly compiler: 7 //! - [`NtCurrentTeb`] 8 //! - [`__readfsdword`] 9 //! - [`__readgsqword`] 10 //! - [`_bittest64`] 11 //! - [`NtCurrentPeb`] 12 //! - [`NtCurrentProcessId`] 13 //! - [`NtCurrentThreadId`] 14 //! - [`RtlProcessHeap`] 15 //! - [`RtlCheckBit`] implementation using [`_bittest64`] on x86_64. 16 //! 17 //! [`NtCurrentTeb`]: winapi_local/um/winnt/fn.NtCurrentTeb.html 18 //! [`__readfsdword`]: winapi_local/um/winnt/fn.__readfsdword.html 19 //! [`__readgsqword`]: winapi_local/um/winnt/fn.__readgsqword.html 20 //! [`_bittest64`]: winapi_local/um/winnt/fn._bittest64.html 21 //! [`NtCurrentPeb`]: ntpsapi/fn.NtCurrentPeb.html 22 //! [`NtCurrentProcessId`]: ntpsapi/fn.NtCurrentProcessId.html 23 //! [`NtCurrentThreadId`]: ntpsapi/fn.NtCurrentThreadId.html 24 //! [`RtlProcessHeap`]: ntrtl/fn.RtlProcessHeap.html 25 //! [`RtlCheckBit`]: ntrtl/fn.RtlCheckBit.html 26 //! [fn_ptr]: https://doc.rust-lang.org/reference/types.html#function-pointer-types 27 //! [`Default`]: https://doc.rust-lang.org/std/default/trait.Default.html#tymethod.default 28 #![cfg(all(windows, any(target_arch = "x86", target_arch = "x86_64", target_arch = "aarch64")))] 29 #![no_std] 30 #![deny(unused, unused_qualifications)] 31 #![warn(unused_attributes)] 32 #![allow(bad_style, overflowing_literals, unused_macros, clippy::cast_lossless, clippy::cast_ptr_alignment, clippy::len_without_is_empty, clippy::trivially_copy_pass_by_ref, clippy::unreadable_literal)] 33 #![cfg_attr(feature = "nightly", feature(llvm_asm))] 34 #[doc(hidden)] 35 pub extern crate core as _core; 36 #[macro_use] 37 #[doc(hidden)] 38 pub extern crate winapi; 39 #[macro_use] 40 mod macros; 41 pub mod ntapi_base; 42 pub mod ntdbg; 43 pub mod ntexapi; 44 pub mod ntgdi; 45 pub mod ntioapi; 46 pub mod ntkeapi; 47 pub mod ntldr; 48 pub mod ntlpcapi; 49 pub mod ntmisc; 50 pub mod ntmmapi; 51 pub mod ntnls; 52 pub mod ntobapi; 53 pub mod ntpebteb; 54 pub mod ntpfapi; 55 pub mod ntpnpapi; 56 pub mod ntpoapi; 57 pub mod ntpsapi; 58 pub mod ntregapi; 59 pub mod ntrtl; 60 pub mod ntsam; 61 pub mod ntseapi; 62 pub mod ntsmss; 63 pub mod nttmapi; 64 pub mod nttp; 65 pub mod ntwow64; 66 pub mod ntxcapi; 67 pub mod ntzwapi; 68 pub mod string; 69 pub mod subprocesstag; 70 pub mod winapi_local; 71 pub mod winsta; 72