20 #define IREP_ID_ONE(id) #id,
21 #define IREP_ID_TWO(id, str) #str,
23 #include "irep_ids.def"
28 enum class idt:unsigned
30 #define IREP_ID_ONE(the_id) id_##the_id,
31 #define IREP_ID_TWO(the_id, str) id_##the_id,
33 #include "irep_ids.def"
36 #define IREP_ID_ONE(the_id) \
37 const dstringt ID_##the_id=dstringt::make_from_table_index( \
38 static_cast<unsigned>(idt::id_##the_id));
39 #define IREP_ID_TWO(the_id, str) \
40 const dstringt ID_##the_id=dstringt::make_from_table_index( \
41 static_cast<unsigned>(idt::id_##the_id));
43 #include "irep_ids.def"
54 INVARIANT(x==i,
"i-th element is inserted at position i");
unsigned get(const char *s)
unsigned operator[](const char *s)
const char * irep_ids_table[]