/* SPDX-FileCopyrightText: © 2022-2024 Decompollaborate */ /* SPDX-License-Identifier: MIT */ #define HASH # #define HASH_EXPANSION(x) x #define SPECIAL_RS_TAG(...) HASH_EXPANSION(HASH)[__VA_ARGS__] #define RAB_DEF_OPERAND(prefix, operand) \ prefix##_##operand, SPECIAL_RS_TAG(repr(u32)) SPECIAL_RS_TAG(derive(Debug, Copy, Clone, Hash, PartialEq, Eq)) SPECIAL_RS_TAG(allow(non_camel_case_types)) pub enum OperandType { RAB_DEF_OPERAND(ALL, INVALID) #include "OperandTypes.inc" RAB_DEF_OPERAND(ALL, MAX) } #undef RAB_DEF_OPERAND