1use crate::stage::SwizzleMode;
2
3#[derive(Copy, Clone, PartialEq, Eq, Hash, Debug)]
4pub enum StageIdent {
5 Lhs,
6 Rhs,
7 Acc,
8 Out,
9}
10
11#[derive(Default, Copy, Clone, Debug, Hash, PartialEq, Eq)]
12pub struct SwizzleModes {
13 pub lhs: SwizzleMode,
14 pub rhs: SwizzleMode,
15 pub acc: SwizzleMode,
16 pub out: SwizzleMode,
17}
18
19impl SwizzleModes {
20 pub fn has_swizzle(&self) -> bool {
21 self.lhs != SwizzleMode::None
22 || self.rhs != SwizzleMode::None
23 || self.acc != SwizzleMode::None
24 || self.out != SwizzleMode::None
25 }
26}