26 for (
auto op : b->
ops()) {
29 if (!
a || !
s)
return nullptr;
38 return w.sigma({w.type_idx(b->
num_ops()), arr})->
template as<Sigma>();
40 return w.sigma(b->
ops())->template as<Sigma>();
static std::optional< T > isa(Ref def)
Specific Bound depending on Up.
void emit(World &, std::ostream &)
const Sigma * convert(const TBound< up > *b)
Ref op(trait o, Ref type)
void register_normalizers(Normalizers &normalizers)
absl::btree_map< std::string, void(*)(World &, std::ostream &)> Backends
MIM_EXPORT mim::Plugin mim_get_plugin()
absl::flat_hash_map< flags_t, NormalizeFn > Normalizers
Basic info and registration function pointer to be returned from a specific plugin.