From 24af17846d14b290aa1d90e37e98c4cbe9e173e1 Mon Sep 17 00:00:00 2001 From: pravic Date: Tue, 12 Apr 2016 18:12:52 +0300 Subject: add winapi-km-rs docs --- doc/src/km/macros.rs.html | 176 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 176 insertions(+) create mode 100644 doc/src/km/macros.rs.html (limited to 'doc/src/km/macros.rs.html') diff --git a/doc/src/km/macros.rs.html b/doc/src/km/macros.rs.html new file mode 100644 index 0000000..229c030 --- /dev/null +++ b/doc/src/km/macros.rs.html @@ -0,0 +1,176 @@ + + + + + + + + + + macros.rs.html -- source + + + + + + + + + + + + + + + + + +
 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+30
+31
+32
+33
+34
+
+//! Macros for Kernel-Mode drivers.
+
+/// Macro to send a message to the kernel debugger.
+///
+/// # Example
+///
+/// ```no_run
+/// KdPrint!("NTSTATUS is 0x%X\n", status);
+/// ```
+#[macro_export]
+macro_rules! KdPrint {
+	($msg:expr $(, $arg:expr)*) => { unsafe { $crate::debug::DbgPrint( concat!($msg, "\0").as_ptr() $(, $arg )* )} };
+}
+
+/// Macro to send a message to the kernel debugger for unsafe blocks.
+///
+/// Used in `unsafe {}` blocks.
+#[macro_export]
+macro_rules! KdPrint_u {
+	($msg:expr $(, $arg:expr)*) => { $crate::debug::DbgPrint( concat!($msg, "\0").as_ptr() $(, $arg )* ) };
+}
+
+#[macro_export]
+macro_rules! check_unsafe {
+	($expr:expr) => {{
+		let st: $crate::status::Status = unsafe { $expr };
+		if st.is_err() {
+			KdPrint!("[km] error: status 0x%X\n", st);
+			return st;
+		} else {
+			st
+		}
+	}}
+}
+
+
+ + + + + + + + + + + + + + + \ No newline at end of file -- cgit v1.2.3