23 for(std::size_t
i=0;
i<sub.size();
i++)
34 else if(base+1<sub.size() && sub[base].id()==
ID_operator)
35 return "operator"+sub[base+1].id_string();
36 else if(base+1<sub.size() && sub[base].id()==
"~" && sub[base+1].id()==
ID_name)
43void cpp_namet::convert(
44 std::string &identifier,
45 std::string &base_name)
const
47 for(
const auto &irep :
get_sub())
58 ss << location() <<
'\n';
59 ss <<
"no template arguments allowed here";
79 for(
const auto &irep :
get_sub())
82 str += irep.id_string();
virtual void clear()
Reset the abstract state.
ait supplies three of the four components needed: an abstract interpreter (in this case handling func...
irep_idt get_base_name() const
std::string to_string() const
dstringt has one field, an unsigned integer no which is an index into a static table of strings.