• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 #![allow(
2     clippy::too_many_arguments,
3     clippy::cognitive_complexity,
4     clippy::wrong_self_convention
5 )]
6 #[macro_use]
7 mod macros;
8 pub use macros::*;
9 mod aliases;
10 pub use aliases::*;
11 mod bitflags;
12 pub use bitflags::*;
13 mod const_debugs;
14 pub(crate) use const_debugs::*;
15 mod constants;
16 pub use constants::*;
17 mod definitions;
18 pub use definitions::*;
19 mod enums;
20 pub use enums::*;
21 mod extensions;
22 pub use extensions::*;
23 mod feature_extensions;
24 pub use feature_extensions::*;
25 mod features;
26 pub use features::*;
27 #[doc = r" Native bindings from Vulkan headers, generated by bindgen"]
28 #[allow(nonstandard_style)]
29 #[allow(deref_nullptr)]
30 pub mod native;
31 mod platform_types;
32 pub use platform_types::*;
33 #[doc = r" Iterates through the pointer chain. Includes the item that is passed into the function."]
34 #[doc = r" Stops at the last `BaseOutStructure` that has a null `p_next` field."]
ptr_chain_iter<T>(ptr: &mut T) -> impl Iterator<Item = *mut BaseOutStructure>35 pub(crate) unsafe fn ptr_chain_iter<T>(ptr: &mut T) -> impl Iterator<Item = *mut BaseOutStructure> {
36     let ptr: *mut BaseOutStructure = ptr as *mut T as _;
37     (0..).scan(ptr, |p_ptr, _| {
38         if p_ptr.is_null() {
39             return None;
40         }
41         let n_ptr = (**p_ptr).p_next as *mut BaseOutStructure;
42         let old = *p_ptr;
43         *p_ptr = n_ptr;
44         Some(old)
45     })
46 }
47 pub trait Handle {
48     const TYPE: ObjectType;
as_raw(self) -> u6449     fn as_raw(self) -> u64;
from_raw(_: u64) -> Self50     fn from_raw(_: u64) -> Self;
51 }
52