15 l = 0x5c61000000000000,
16 r = 0x5c61000000000001,
61#define MIM_vec_NORMALIZER_IMPL \
62 void register_normalizers(Normalizers& normalizers) {\
63 normalizers[flags_t(fold::l)] = &normalize_fold<fold::l>; \
64 normalizers[flags_t(fold::r)] = &normalize_fold<fold::r>; \
65 normalizers[flags_t(scan::for_all)] = &normalize_scan<scan::for_all>; \
66 normalizers[flags_t(scan::exists)] = &normalize_scan<scan::exists>; \
67 normalizers[flags_t(Annex::Base<is_unique>)] = &normalize_is_unique; \
68 normalizers[flags_t(Annex::Base<diff>)] = &normalize_diff; \
92template<>
struct fe::is_bit_enum<
mim::plug::vec::fold> : std::true_type {};
93template<>
struct fe::is_bit_enum<
mim::plug::vec::scan> : std::true_type {};
const Def * normalize_scan(const Def *, const Def *c, const Def *vec)
void register_normalizers(Normalizers &normalizers)
const Def * normalize_is_unique(const Def *, const Def *, const Def *vec)
const Def * normalize_diff(const Def *type, const Def *c, const Def *arg)
const Def * normalize_fold(const Def *, const Def *c, const Def *arg)
static constexpr plugin_t Plugin_Id
absl::flat_hash_map< flags_t, NormalizeFn > Normalizers
static constexpr size_t Num
static constexpr flags_t Base