From e9635c8d95b6eb6b5e26fcfba10f83ac3c0fd4e4 Mon Sep 17 00:00:00 2001 From: Marijn Suijten Date: Tue, 28 Dec 2021 19:14:19 +0100 Subject: [PATCH] Generate `RGBA=R|G|B|A` helper constant for `ColorComponentFlags` When the misleading `all()` function was removed in #478 it also made all color components for `ColorComponentFlags` significantly more verbose to write, see #536. --- ash/src/vk/prelude.rs | 5 +++++ examples/src/bin/texture.rs | 5 +---- examples/src/bin/triangle.rs | 5 +---- 3 files changed, 7 insertions(+), 8 deletions(-) diff --git a/ash/src/vk/prelude.rs b/ash/src/vk/prelude.rs index f873937c0..f62b60e5c 100644 --- a/ash/src/vk/prelude.rs +++ b/ash/src/vk/prelude.rs @@ -26,3 +26,8 @@ impl Packed24_8 { (self.0 >> 24) as u8 } } + +impl super::ColorComponentFlags { + /// Contraction of [`Self::R`] | [`Self::G`] | [`Self::B`] | [`Self::A`] + pub const RGBA: Self = Self(Self::R.0 | Self::G.0 | Self::B.0 | Self::A.0); +} diff --git a/examples/src/bin/texture.rs b/examples/src/bin/texture.rs index e4ab27ecb..deaddba1c 100644 --- a/examples/src/bin/texture.rs +++ b/examples/src/bin/texture.rs @@ -666,10 +666,7 @@ fn main() { src_alpha_blend_factor: vk::BlendFactor::ZERO, dst_alpha_blend_factor: vk::BlendFactor::ZERO, alpha_blend_op: vk::BlendOp::ADD, - color_write_mask: vk::ColorComponentFlags::R - | vk::ColorComponentFlags::G - | vk::ColorComponentFlags::B - | vk::ColorComponentFlags::A, + color_write_mask: vk::ColorComponentFlags::RGBA, }]; let color_blend_state = vk::PipelineColorBlendStateCreateInfo::builder() .logic_op(vk::LogicOp::CLEAR) diff --git a/examples/src/bin/triangle.rs b/examples/src/bin/triangle.rs index cc322fc69..50a3eb408 100644 --- a/examples/src/bin/triangle.rs +++ b/examples/src/bin/triangle.rs @@ -319,10 +319,7 @@ fn main() { src_alpha_blend_factor: vk::BlendFactor::ZERO, dst_alpha_blend_factor: vk::BlendFactor::ZERO, alpha_blend_op: vk::BlendOp::ADD, - color_write_mask: vk::ColorComponentFlags::R - | vk::ColorComponentFlags::G - | vk::ColorComponentFlags::B - | vk::ColorComponentFlags::A, + color_write_mask: vk::ColorComponentFlags::RGBA, }]; let color_blend_state = vk::PipelineColorBlendStateCreateInfo::builder() .logic_op(vk::LogicOp::CLEAR)