Hash derive for all PoD types
This commit is contained in:
parent
213406682e
commit
eb3c3caf2c
74
src/vk.rs
74
src/vk.rs
|
@ -432,7 +432,7 @@ pub mod types {
|
||||||
pub inherited_queries: Bool32,
|
pub inherited_queries: Bool32,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct FormatProperties {
|
pub struct FormatProperties {
|
||||||
pub linear_tiling_features: FormatFeatureFlags,
|
pub linear_tiling_features: FormatFeatureFlags,
|
||||||
|
@ -440,7 +440,7 @@ pub mod types {
|
||||||
pub buffer_features: FormatFeatureFlags,
|
pub buffer_features: FormatFeatureFlags,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct ImageFormatProperties {
|
pub struct ImageFormatProperties {
|
||||||
pub max_extent: Extent3D,
|
pub max_extent: Extent3D,
|
||||||
|
@ -450,7 +450,7 @@ pub mod types {
|
||||||
pub max_resource_size: DeviceSize,
|
pub max_resource_size: DeviceSize,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct Extent3D {
|
pub struct Extent3D {
|
||||||
pub width: uint32_t,
|
pub width: uint32_t,
|
||||||
|
@ -990,7 +990,7 @@ pub mod types {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct PhysicalDeviceSparseProperties {
|
pub struct PhysicalDeviceSparseProperties {
|
||||||
pub residency_standard2dblock_shape: Bool32,
|
pub residency_standard2dblock_shape: Bool32,
|
||||||
|
@ -1000,7 +1000,7 @@ pub mod types {
|
||||||
pub residency_non_resident_strict: Bool32,
|
pub residency_non_resident_strict: Bool32,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct QueueFamilyProperties {
|
pub struct QueueFamilyProperties {
|
||||||
pub queue_flags: QueueFlags,
|
pub queue_flags: QueueFlags,
|
||||||
|
@ -1055,14 +1055,14 @@ pub mod types {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct MemoryType {
|
pub struct MemoryType {
|
||||||
pub property_flags: MemoryPropertyFlags,
|
pub property_flags: MemoryPropertyFlags,
|
||||||
pub heap_index: uint32_t,
|
pub heap_index: uint32_t,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct MemoryHeap {
|
pub struct MemoryHeap {
|
||||||
pub size: DeviceSize,
|
pub size: DeviceSize,
|
||||||
|
@ -1211,7 +1211,7 @@ pub mod types {
|
||||||
pub size: DeviceSize,
|
pub size: DeviceSize,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct MemoryRequirements {
|
pub struct MemoryRequirements {
|
||||||
pub size: DeviceSize,
|
pub size: DeviceSize,
|
||||||
|
@ -1219,7 +1219,7 @@ pub mod types {
|
||||||
pub memory_type_bits: uint32_t,
|
pub memory_type_bits: uint32_t,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct SparseImageMemoryRequirements {
|
pub struct SparseImageMemoryRequirements {
|
||||||
pub format_properties: SparseImageFormatProperties,
|
pub format_properties: SparseImageFormatProperties,
|
||||||
|
@ -1229,7 +1229,7 @@ pub mod types {
|
||||||
pub image_mip_tail_stride: DeviceSize,
|
pub image_mip_tail_stride: DeviceSize,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct SparseImageFormatProperties {
|
pub struct SparseImageFormatProperties {
|
||||||
pub aspect_mask: ImageAspectFlags,
|
pub aspect_mask: ImageAspectFlags,
|
||||||
|
@ -1262,7 +1262,7 @@ pub mod types {
|
||||||
pub p_binds: *const SparseMemoryBind,
|
pub p_binds: *const SparseMemoryBind,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct SparseMemoryBind {
|
pub struct SparseMemoryBind {
|
||||||
pub resource_offset: DeviceSize,
|
pub resource_offset: DeviceSize,
|
||||||
|
@ -1299,7 +1299,7 @@ pub mod types {
|
||||||
pub flags: SparseMemoryBindFlags,
|
pub flags: SparseMemoryBindFlags,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct ImageSubresource {
|
pub struct ImageSubresource {
|
||||||
pub aspect_mask: ImageAspectFlags,
|
pub aspect_mask: ImageAspectFlags,
|
||||||
|
@ -1307,7 +1307,7 @@ pub mod types {
|
||||||
pub array_layer: uint32_t,
|
pub array_layer: uint32_t,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct Offset3D {
|
pub struct Offset3D {
|
||||||
pub x: int32_t,
|
pub x: int32_t,
|
||||||
|
@ -1395,7 +1395,7 @@ pub mod types {
|
||||||
pub initial_layout: ImageLayout,
|
pub initial_layout: ImageLayout,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct SubresourceLayout {
|
pub struct SubresourceLayout {
|
||||||
pub offset: DeviceSize,
|
pub offset: DeviceSize,
|
||||||
|
@ -1418,7 +1418,7 @@ pub mod types {
|
||||||
pub subresource_range: ImageSubresourceRange,
|
pub subresource_range: ImageSubresourceRange,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct ComponentMapping {
|
pub struct ComponentMapping {
|
||||||
pub r: ComponentSwizzle,
|
pub r: ComponentSwizzle,
|
||||||
|
@ -1427,7 +1427,7 @@ pub mod types {
|
||||||
pub a: ComponentSwizzle,
|
pub a: ComponentSwizzle,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct ImageSubresourceRange {
|
pub struct ImageSubresourceRange {
|
||||||
pub aspect_mask: ImageAspectFlags,
|
pub aspect_mask: ImageAspectFlags,
|
||||||
|
@ -1502,7 +1502,7 @@ pub mod types {
|
||||||
pub p_data: *const c_void,
|
pub p_data: *const c_void,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct SpecializationMapEntry {
|
pub struct SpecializationMapEntry {
|
||||||
pub constant_id: uint32_t,
|
pub constant_id: uint32_t,
|
||||||
|
@ -1522,7 +1522,7 @@ pub mod types {
|
||||||
pub p_vertex_attribute_descriptions: *const VertexInputAttributeDescription,
|
pub p_vertex_attribute_descriptions: *const VertexInputAttributeDescription,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct VertexInputBindingDescription {
|
pub struct VertexInputBindingDescription {
|
||||||
pub binding: uint32_t,
|
pub binding: uint32_t,
|
||||||
|
@ -1530,7 +1530,7 @@ pub mod types {
|
||||||
pub input_rate: VertexInputRate,
|
pub input_rate: VertexInputRate,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct VertexInputAttributeDescription {
|
pub struct VertexInputAttributeDescription {
|
||||||
pub location: uint32_t,
|
pub location: uint32_t,
|
||||||
|
@ -1581,21 +1581,21 @@ pub mod types {
|
||||||
pub max_depth: c_float,
|
pub max_depth: c_float,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct Rect2D {
|
pub struct Rect2D {
|
||||||
pub offset: Offset2D,
|
pub offset: Offset2D,
|
||||||
pub extent: Extent2D,
|
pub extent: Extent2D,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct Offset2D {
|
pub struct Offset2D {
|
||||||
pub x: int32_t,
|
pub x: int32_t,
|
||||||
pub y: int32_t,
|
pub y: int32_t,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct Extent2D {
|
pub struct Extent2D {
|
||||||
pub width: uint32_t,
|
pub width: uint32_t,
|
||||||
|
@ -1713,7 +1713,7 @@ pub mod types {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct PipelineColorBlendAttachmentState {
|
pub struct PipelineColorBlendAttachmentState {
|
||||||
pub blend_enable: Bool32,
|
pub blend_enable: Bool32,
|
||||||
|
@ -1760,7 +1760,7 @@ pub mod types {
|
||||||
pub p_push_constant_ranges: *const PushConstantRange,
|
pub p_push_constant_ranges: *const PushConstantRange,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct PushConstantRange {
|
pub struct PushConstantRange {
|
||||||
pub stage_flags: ShaderStageFlags,
|
pub stage_flags: ShaderStageFlags,
|
||||||
|
@ -1822,7 +1822,7 @@ pub mod types {
|
||||||
pub p_pool_sizes: *const DescriptorPoolSize,
|
pub p_pool_sizes: *const DescriptorPoolSize,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct DescriptorPoolSize {
|
pub struct DescriptorPoolSize {
|
||||||
pub typ: DescriptorType,
|
pub typ: DescriptorType,
|
||||||
|
@ -1854,7 +1854,7 @@ pub mod types {
|
||||||
pub p_texel_buffer_view: *const BufferView,
|
pub p_texel_buffer_view: *const BufferView,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct DescriptorImageInfo {
|
pub struct DescriptorImageInfo {
|
||||||
pub sampler: Sampler,
|
pub sampler: Sampler,
|
||||||
|
@ -1912,7 +1912,7 @@ pub mod types {
|
||||||
pub p_dependencies: *const SubpassDependency,
|
pub p_dependencies: *const SubpassDependency,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct AttachmentDescription {
|
pub struct AttachmentDescription {
|
||||||
pub flags: AttachmentDescriptionFlags,
|
pub flags: AttachmentDescriptionFlags,
|
||||||
|
@ -1941,14 +1941,14 @@ pub mod types {
|
||||||
pub p_preserve_attachments: *const uint32_t,
|
pub p_preserve_attachments: *const uint32_t,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct AttachmentReference {
|
pub struct AttachmentReference {
|
||||||
pub attachment: uint32_t,
|
pub attachment: uint32_t,
|
||||||
pub layout: ImageLayout,
|
pub layout: ImageLayout,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct SubpassDependency {
|
pub struct SubpassDependency {
|
||||||
pub src_subpass: uint32_t,
|
pub src_subpass: uint32_t,
|
||||||
|
@ -2001,7 +2001,7 @@ pub mod types {
|
||||||
pub pipeline_statistics: QueryPipelineStatisticFlags,
|
pub pipeline_statistics: QueryPipelineStatisticFlags,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct BufferCopy {
|
pub struct BufferCopy {
|
||||||
pub src_offset: DeviceSize,
|
pub src_offset: DeviceSize,
|
||||||
|
@ -2009,7 +2009,7 @@ pub mod types {
|
||||||
pub size: DeviceSize,
|
pub size: DeviceSize,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct ImageCopy {
|
pub struct ImageCopy {
|
||||||
pub src_subresource: ImageSubresourceLayers,
|
pub src_subresource: ImageSubresourceLayers,
|
||||||
|
@ -2019,7 +2019,7 @@ pub mod types {
|
||||||
pub extent: Extent3D,
|
pub extent: Extent3D,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct ImageSubresourceLayers {
|
pub struct ImageSubresourceLayers {
|
||||||
pub aspect_mask: ImageAspectFlags,
|
pub aspect_mask: ImageAspectFlags,
|
||||||
|
@ -2074,7 +2074,7 @@ pub mod types {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct BufferImageCopy {
|
pub struct BufferImageCopy {
|
||||||
pub buffer_offset: DeviceSize,
|
pub buffer_offset: DeviceSize,
|
||||||
|
@ -2092,7 +2092,7 @@ pub mod types {
|
||||||
pub stencil: uint32_t,
|
pub stencil: uint32_t,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct ClearAttachment {
|
pub struct ClearAttachment {
|
||||||
pub aspect_mask: ImageAspectFlags,
|
pub aspect_mask: ImageAspectFlags,
|
||||||
|
@ -2100,7 +2100,7 @@ pub mod types {
|
||||||
pub clear_value: ClearValue,
|
pub clear_value: ClearValue,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct ClearRect {
|
pub struct ClearRect {
|
||||||
pub rect: Rect2D,
|
pub rect: Rect2D,
|
||||||
|
@ -2108,7 +2108,7 @@ pub mod types {
|
||||||
pub layer_count: uint32_t,
|
pub layer_count: uint32_t,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
pub struct ImageResolve {
|
pub struct ImageResolve {
|
||||||
pub src_subresource: ImageSubresourceLayers,
|
pub src_subresource: ImageSubresourceLayers,
|
||||||
|
@ -2495,7 +2495,7 @@ pub mod types {
|
||||||
|
|
||||||
/// Temporary Hard-Coded union hack; will be automatically generated when actual unions become stable
|
/// Temporary Hard-Coded union hack; will be automatically generated when actual unions become stable
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone, Hash)]
|
||||||
pub struct ClearValue {
|
pub struct ClearValue {
|
||||||
data: [u8; 16],
|
data: [u8; 16],
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue