26 for(
unsigned j=0; j<size(); j++)
28 if((j+1)==size() && size()!=1)
30 if((*
this)[j].is_nil())
37 result+=(*this)[j].expr2string();
65 if(ptr==std::string::npos || ptr>=s.size())
69 ptr=s.find_first_not_of(
" \t", ptr);
70 if(ptr==std::string::npos)
78 for(ptr++; ptr<s.size();)
82 if(ptr<s.size() && s[ptr]==
'.')
88 if(expr.
parse(s, ptr))
92 if(ptr<s.size() && s[ptr]==
')')
112 for(ptr++; ptr<s.size() && (s[ptr]!=
'"' && !quoted); ptr++)
114 if(!quoted && s[ptr]==
'\\')
126 else if(isdigit(s[ptr]))
131 for(; ptr<s.size() && (isdigit(s[ptr]) || s[ptr]==
'.'); ptr++)
139 for(; ptr<s.size() && s[ptr]!=
' ' && s[ptr]!=
'\t' &&
140 s[ptr]!=
')' && s[ptr]!=
'.'; ptr++)
145 ptr=s.find_first_not_of(
" \t", ptr);
154 for(
unsigned i=0; i<s.size(); i++)
156 if(s[i]==
'\\' || s[i]==
'"')
176 if(!std::cin.read(&ch, 1))
183 std::cout <<
"Parsing error\n";
185 std::cout << expr <<
"\n";
std::string expr2string() const
bool parse(const std::string &s)
unsignedbv_typet size_type()
std::string escape(const std::string &s)
void dot(const goto_functionst &src, const namespacet &ns, std::ostream &out)